Elastic Fabric Adapter - AWS ParallelCluster

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Elastic Fabric Adapter

Elastic Fabric Adapter (EFA) 是一种网络设备,具有操作系统旁路功能,可与同一子网上的其他实例进行低延迟的网络通信。EFA 通过使用 Libfabric 进行公开,并且可以由使用消息传递接口 (MPI) 的应用程序使用。

要将 EFA AWS ParallelCluster 与Slurm调度程序一起使用,请将 SlurmQueues//ComputeResourcesEfa/设置为Enabledtrue

要查看支持 EFA 的 Amazon EC2 实例的列表,请参阅《Amazon EC2 用户指南(适用于 Linux 实例)》中的支持的实例类型

我们建议您在置放群组中运行启用 EFA 的实例。这样,这些实例便可启动到单个可用区的低延迟组中。有关如何使用 AWS ParallelCluster配置置放群组的更多信息,请参阅 SlurmQueues/Networking/PlacementGroup

注意

不支持在不同的可用区之间使用 Elastic Fabric Adapter (EFA)。有关更多信息,请参阅日程安排/SlurmQueues/联网/SubnetIds

注意

Ubuntu 分发默认启用 ptrace(进程跟踪)保护。已禁用 ptrace 保护以使 Libfabric 正常运行。有关更多信息,请参阅《Amazon EC2 用户指南》中的禁用 ptrace 保护

默认 EFA 网络配置

从 AWS ParallelCluster 3.15.0 开始,启用 EFA 后, AWS ParallelCluster 会自动配置仅限 EFA 的网络接口,以将 EFA 流量与 IP 流量分开。这样可以最大限度地提高 EFA 带宽,同时最大限度地降低 IP 地址 AWS ParallelCluster 根据实例类型的功能确定最佳配置。

对于大多数工作负载,包括紧密耦合的 HPC 和分布式训练,建议使用此默认配置。 AI/ML

自定义 EFA 网络接口

如果您的工作负载需要不同的网络配置,例如最大限度地提高辅助网卡上的 ENA 带宽或配置可用网卡的子集,则可以使用 SlurmQueues/ComputeResources/LaunchTemplateOverrides参数覆盖默认设置。这将使用启动模板中定义的配置替换计算节点的整个网络接口配置。

有关演 step-by-step练,请参阅使用启动模板覆盖自定义计算节点网络接口

警告

如果您以实例类型不支持的方式配置网络接口,则实例将无法启动。要验证您的实例类型支持的网络配置,请参阅 Amazon EC2 API 参考DescribeInstanceTypes中的。

有关更多信息,请参阅《Amazon EC2 用户指南》中的 Elastic Fabric Adapter 以及 AWS 开放源代码博客中的使用 Elastic Fabric Adapter 和 AWS ParallelCluster扩展 HPC 工作负载