

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Elastic Fabric Adapter
<a name="efa-v3"></a>

Elastic Fabric Adapter (EFA) 是一種具有 OS-bypass 功能的網路裝置，可與相同子網路上的其他執行個體進行低延遲網路通訊。EFA 是使用 Libfabric 公開，並且可以使用簡訊傳遞界面 (MPI) 供應用程式使用。

若要搭配 AWS ParallelCluster 和Slurm排程器使用 EFA，請將 [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues) / [`ComputeResources`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-ComputeResources) / [`Efa`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-Efa) / [`Enabled`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-Efa-Enabled)設為 `true`。

若要檢視支援 EFA 的 Amazon EC2 執行個體清單，請參閱《*Amazon EC2 Linux 執行個體使用者指南》中的*[支援的執行個體類型](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html#efa-instance-types)。

我們建議您在置放群組中執行已啟用 EFA 的執行個體。如此一來，執行個體就會在單一可用區域中的低延遲群組中啟動。如需如何使用 設定置放群組的詳細資訊 AWS ParallelCluster，請參閱 [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues) / [`Networking`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Networking) / [`PlacementGroup`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Networking-PlacementGroup)。

**注意**  
不同可用區域不支援 Elastic Fabric Adapter (EFA)。如需詳細資訊，請參閱[排程](Scheduling-v3.md) / [SlurmQueues](Scheduling-v3.md#Scheduling-v3-SlurmQueues) / [網路](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Networking) / [SubnetIds](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Networking-SubnetIds)。

**注意**  
根據預設， Ubuntu 分佈會啟用 ptrace（程序追蹤） 保護。 ptrace保護會停用，讓 Libfabric 正常運作。如需詳細資訊，請參閱《*Amazon EC2 使用者指南*》中的[停用 ptrace 保護](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa-start.html#efa-start-ptrace)。

## 預設 EFA 網路組態
<a name="efa-v3-default-config"></a>

從 in AWS ParallelCluster 3.15.0 開始，啟用 EFA 時， AWS ParallelCluster 會自動設定僅限 EFA 的網路介面，將 EFA 流量與 IP 流量分開。這可將 EFA 頻寬最大化，同時將 IP 地址耗用量降至最低。 會根據執行個體類型的功能來 AWS ParallelCluster 決定最佳組態。

建議大多數工作負載使用此預設組態，包括緊密耦合的 HPC 和分散式 AI/ML 訓練。

## 自訂 EFA 網路介面
<a name="efa-v3-custom-interfaces"></a>

如果您的工作負載需要不同的網路組態，例如將次要網路卡上的 ENA 頻寬最大化，或設定可用的網路卡子集，您可以使用 [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues) / [`ComputeResources`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-ComputeResources) / [`LaunchTemplateOverrides`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-LaunchTemplateOverrides) 參數覆寫預設設定。這會將運算節點的整個網路介面組態取代為啟動範本中定義的組態。

如需逐步說明，請參閱[使用啟動範本覆寫自訂運算節點網路介面](tutorial-network-customization-v3.md)。

**警告**  
如果您以執行個體類型不支援的方式設定網路介面，執行個體將無法啟動。若要驗證執行個體類型的支援網路組態，請參閱《*Amazon EC2 API 參考*》中的 [DescribeInstanceTypes](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstanceTypes.html)。

如需詳細資訊，請參閱《*Amazon EC2 使用者指南*》中的 [Elastic Fabric Adapter](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html) 和[使用彈性布料轉接器擴展 HPC 工作負載，以及 AWS ParallelCluster](https://aws.amazon.com/blogs/opensource/scale-hpc-workloads-elastic-fabric-adapter-and-aws-parallelcluster/)*AWS 《開放原始碼部落格*》中的 。