Amazon Elastic Compute Cloud
Linux 인스턴스용 사용 설명서

Elastic Fabric Adapter(EFA)

Elastic Fabric Adapter(EFA)(EFA)는 네트워크 디바이스로 Amazon EC2 인스턴스에 연결하여 HPC(고성능 컴퓨팅) 및 기계 학습 애플리케이션 속도를 높일 수 있습니다. EFA는 AWS 클라우드가 제공하는 확장성, 유연성, 탄력성을 통해 온프레미스 HPC 클러스터의 애플리케이션 성능을 확보합니다.

EFA는 전통적으로 클라우드 기반 HPC 시스템에서 사용하는 TCP 전송보다 지연율이 낮고 일정하며 더 높은 처리량을 제공합니다. 또한 대규모 HPC 및 기계 학습 애플리케이션에서 중요한 인스턴스 간 통신 성능을 확장합니다. 이는 기존 AWS 네트워크 인프라에서 작업하도록 최적화되어 애플리케이션 요구량에 따라 크기를 변경합니다.

EFA는 Libfabric 1.8.1과 통합되며 HPC 애플리케이션을 위한 Open MPI 4.0.2 및 Intel MPI 2019 Update 6과 기계 학습 애플리케이션을 위한 NCCL(Nvidia Collective Communications Library)을 지원합니다.

참고

Windows 인스턴스에서는 EFAs에서 제공하는 OS 우회 기능을 지원하지 않습니다. EFA를 Windows 인스턴스에 연결한 경우 인스턴스는 추가적인 EFA 기능이 없는 ENA(Elastic Network Adapter)로 작동합니다.

EFA 기본 사항

EFA는 추가 기능이 있는 ENA(Elastic Network Adapter)입니다. 따라서 추가적인 OS 우회 기능을 포함한 모든 ENA의 기능을 제공합니다. OS 우회는 HPC 및 기계 학습 애플리케이션이 네트워크 인터페이스 하드웨어와 직접 통신하도록 하는 액세스 모델로서 낮은 지연율과 신뢰성 높은 전송 기능을 제공합니다.


				EFA를 사용한 HPC 소프트웨어 스택과 기존 스택 비교.

기존의 HPC 애플리케이션은 시스템의 네트워크 전송 인터페이스에 MPI(Message Passing Interface)를 사용했습니다. AWS 클라우드에서 MPI를 사용하는 애플리케이션 인터페이스를 의미하며 이는 인스턴스 간 네트워크 통신을 위해 운영 체제의 TCP/IP 스택과 ENA 디바이스 드라이버를 사용한다는 의미입니다.

EFA에서 HPC 애플리케이션은 Libfabric API에 MPI 또는 NCCL 인터페이스를 사용합니다. Libfabric API는 운영 체제 커널을 우회하여 EFA 디바이스와 직접 통신을 통해 네트워크에 패킷을 전송합니다. 이는 오버헤드를 줄이고 HPC 애플리케이션이 더욱 효율적으로 실행되도록 합니다.

참고

Libfabric은 OFI(OpenFabrics Interface) 프레임워크의 핵심 구성 요소로서 OFI의 사용자 공간 API를 정의하고 내보냅니다. 자세한 정보는 Libfabric OpenFabrics 웹 사이트를 참조하십시오.

EFAs 및 ENA 간의 차이점

ENA(Elastic Network Adapter)는 VPC 네트워크를 지원하는 데 필요한 기존 IP 네트워크 기능을 제공합니다. EFAs는 ENA와 마찬가지로 모든 기존 IP 네트워크 기능을 제공하지만 OS 우회 기능을 함께 제공합니다. OS 우회는 HPC 및 기계 학습 애플리케이션이 운영 체제 커널을 우회하여 EFA 디바이스와 직접 통신할 수 있도록 합니다.

지원되는 인터페이스 및 라이브러리

EFA는 다음 인터페이스 및 라이브러리를 지원합니다.

  • Open MPI 4.0.2

  • Intel MPI 2019 Update 6

  • NCCL(Nvidia Collective Communications Library) 2.4.2 이상

지원되는 인스턴스 유형

c5n.18xlarge, c5n.metal, i3en.24xlarge, m5dn.24xlarge, m5n.24xlarge, r5dn.24xlarge, r5n.24xlarge, and p3dn.24xlarge 인스턴스 유형은 EFAs를 지원합니다.

지원되는 AMI

EFAs를 지원하는 AMI: Amazon Linux, Amazon Linux 2, RHEL 7.6, RHEL 7.7, CentOS 7, Ubuntu 16.04, and Ubuntu 18.04

EFA 제한 사항

EFA에는 다음과 같은 제한 사항이 있습니다.

  • 인스턴스당 한 개의 EFA를 연결할 수 있습니다.

  • EFA OS 우회 트래픽은 단일 서브넷으로 제한됩니다. 즉 EFA 트래픽은 서브넷 간 전송이 불가능합니다. EFA의 일반 IP 트래픽은 서브넷 간 전송이 가능합니다.

  • EFA OS 우회 트래픽은 라우팅되지 않습니다. EFA의 일반 IP 트래픽은 라우팅이 가능합니다.

  • EFA은 보안 그룹 자체 내의 모든 인바운드 및 아웃바운드 트래픽을 허용하는 보안 그룹에 구성되어야 합니다.