Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Elastic Fabric Adapter per HPC carichi di lavoro ML su Amazon EC2
Un Elastic Fabric Adapter (EFA) è un dispositivo di rete che puoi collegare alla tua EC2 istanza Amazon per accelerare le applicazioni di High Performance Computing (HPC) e machine learning. EFAti consente di ottenere le prestazioni applicative di un HPC cluster locale, con la scalabilità, la flessibilità e l'elasticità fornite dal AWS cloud.
EFAsforniscono una latenza inferiore e più costante e un throughput più elevato rispetto al TCP trasporto tradizionalmente utilizzato nei sistemi basati su cloud. HPC Migliora le prestazioni della comunicazione tra istanze, fondamentali per la scalabilità e le applicazioni di apprendimento automatico. HPC È ottimizzato per funzionare sull'infrastruttura di AWS rete esistente e può essere scalato in base ai requisiti dell'applicazione.
EFAssi integra con Libfabric 1.7.0 e versioni successive e supporta Open MPI 5 e versioni successive e Intel MPI 2019 Update 5 e versioni successive per HPC le applicazioni e Nvidia Collective Communications Library (NCCL) per le applicazioni di apprendimento automatico.
Nota
Le funzionalità OS-Bypass di non sono supportate nelle istanze WindowsEFAs. Se si collega un EFA a un'istanza di Windows, l'istanza funziona come un adattatore di rete elastico, senza funzionalità aggiuntive. EFA
Indice
- EFAnozioni di base
- Librerie e interfacce supportate
- Tipi di istanze supportati
- Sistemi operativi supportati
- EFAlimitazioni
- EFAprezzi
- EFAsu istanze accelerate
- Inizia con e EFA MPI
- Inizia con e EFA NCCL
- Crea e allega un EFA
- Scollega ed elimina un EFA
- Monitoraggio di un EFA
- Verifica il programma di installazione EFA
EFAnozioni di base
An EFA è un Elastic Network Adapter (ENA) con funzionalità aggiuntive. Fornisce tutte le funzionalità di un sistema operativoENA, con una funzionalità aggiuntiva di bypass del sistema operativo. OS-Bypass è un modello di accesso che consente alle applicazioni di machine learning di comunicare direttamente con l'hardware dell'interfaccia di rete per fornire funzionalità di trasporto affidabili HPC e a bassa latenza.
Tradizionalmente, HPC le applicazioni utilizzano la Message Passing Interface (MPI) per interfacciarsi con il trasporto di rete del sistema. Nel AWS cloud, ciò significa che le applicazioni si interfacciano conMPI, che quindi utilizza lo stack TCP /IP del sistema operativo e il driver del ENA dispositivo per abilitare la comunicazione di rete tra le istanze.
Con unEFA, HPC le applicazioni utilizzano MPI o si NCCL interfacciano con Libfabric. API Libfabric API ignora il kernel del sistema operativo e comunica direttamente con il EFA dispositivo per immettere pacchetti sulla rete. Ciò riduce il sovraccarico e consente all'applicazione di funzionare in modo più HPC efficiente.
Nota
Libfabric è un componente fondamentale del framework OpenFabrics Interfaces (OFI), che definisce ed esporta lo spazio utente di. API OFI Per ulteriori informazioni, consulta il sito Web Libfabric. OpenFabrics
Differenze tra e EFAs ENAs
Gli Elastic Network Adapters (ENAs) forniscono funzionalità di rete IP tradizionali necessarie per supportare il VPC networking. EFAsforniscono tutte le stesse funzionalità di rete IP tradizionali e supportano anche le funzionalità OS-Bypass. ENAs OS-Bypass consente alle applicazioni di machine learning di bypassare il kernel del sistema operativo HPC e di comunicare direttamente con il dispositivo. EFA
Librerie e interfacce supportate
EFAssupportano le seguenti interfacce e librerie:
-
Open MPI 5 e versioni successive
-
Open MPI 4.0 o versioni successive è preferibile per Graviton
-
Intel MPI 2019 Update 5 e versioni successive
-
NVIDIACollective Communications Library (NCCL) 2.4.2 e versioni successive
Tipi di istanze supportati
I seguenti tipi di istanza supportano EFAs:
-
Scopo generale:
m5dn.24xlarge
m5dn.metal
|m5n.24xlarge
|m5n.metal
m5zn.12xlarge
|m5zn.metal
|m6a.48xlarge
|m6a.metal
|m6i.32xlarge
|m6i.metal
|m6id.32xlarge
|m6id.metal
|m6idn.32xlarge
|m6idn.metal
|m6in.32xlarge
|m6in.metal
|m7a.48xlarge
|m7a.metal-48xl
m7g.16xlarge
|m7g.metal
|m7gd.16xlarge
|m7gd.metal
|m7i.48xlarge
|m7i.metal-48xl
|m8g.24xlarge
|m8g.48xlarge
|m8g.metal-24xl
m8g.metal-48xl
-
Ottimizzate per il calcolo:
c5n.9xlarge
|c5n.18xlarge
|c5n.metal
|c6a.48xlarge
|c6a.metal
|c6gn.16xlarge
|c6i.32xlarge
|c6i.metal
|c6id.32xlarge
|c6id.metal
|c6in.32xlarge
|c6in.metal
|c7a.48xlarge
|c7a.metal-48xl
|c7g.16xlarge
|c7g.metal
|c7gd.16xlarge
|c7gd.metal
|c7gn.16xlarge
|c7gn.metal
|c7i.48xlarge
|c7i.metal-48xl
|c8g.24xlarge
|c8g.48xlarge
|c8g.metal-24xl
|c8g.metal-48xl
-
Memoria ottimizzata:
r5dn.24xlarge
r5dn.metal
r5n.24xlarge
r5n.metal
|r6a.48xlarge
|r6a.metal
|r6i.32xlarge
|r6i.metal
r6idn.32xlarge
|r6idn.metal
|r6in.32xlarge
|r6in.metal
|r6id.32xlarge
|r6id.metal
|r7a.48xlarge
|r7a.metal-48xl
|r7g.16xlarge
r7g.metal
|r7gd.16xlarge
|r7gd.metal
|r7i.48xlarge
|r7i.metal-48xl
|r7iz.32xlarge
|r7iz.metal-32xl
r8g.24xlarge
|r8g.48xlarge
|r8g.metal-24xl
|r8g.metal-48xl
|u7i-12tb.224xlarge
|u7in-16tb.224xlarge
|u7in-24tb.224xlarge
|u7in-32tb.224xlarge
|x2idn.32xlarge
x2idn.metal
|x2iedn.32xlarge
|x2iedn.metal
|x2iezn.12xlarge
|x2iezn.metal
|x8g.24xlarge
x8g.48xlarge
|x8g.metal-24xl
|x8g.metal-48xl
-
Storage ottimizzato:
i3en.12xlarge
|i3en.24xlarge
|i3en.metal
|i4g.16xlarge
|i4i.32xlarge
|i4i.metal
|im4gn.16xlarge
-
Calcolo accelerato:
dl1.24xlarge
dl2q.24xlarge
g4dn.8xlarge
|g4dn.12xlarge
g4dn.16xlarge
|g4dn.metal
|g5.8xlarge
|g5.12xlarge
|g5.16xlarge
g5.24xlarge
|g5.48xlarge
|g6.8xlarge
|g6.12xlarge
|g6.16xlarge
|g6.24xlarge
g6.48xlarge
|g6e.8xlarge
|g6e.12xlarge
|g6e.16xlarge
|g6e.24xlarge
g6e.48xlarge
|gr6.8xlarge
|inf1.24xlarge
|p3dn.24xlarge
|p4d.24xlarge
|p4de.24xlarge
p5.48xlarge
|p5e.48xlarge
|trn1.32xlarge
|trn1n.32xlarge
vt1.24xlarge
-
Elaborazione ad alte prestazioni:
hpc6a.48xlarge
|hpc6id.32xlarge
|hpc7a.12xlarge
| |hpc7a.24xlarge
|hpc7a.48xlarge
| |hpc7a.96xlarge
|hpc7g.4xlarge
hpc7g.8xlarge
hpc7g.16xlarge
Per visualizzare i tipi di istanza disponibili supportati EFAs in una regione specifica
I tipi di istanza disponibili variano in base alla regione. Per visualizzare i tipi di istanza disponibili supportati EFAs in una regione, utilizzate il describe-instance-typescomando con il --region
parametro. Includete il --filters
parametro per definire l'ambito dei risultati in base ai tipi di istanza supportati EFA e il --query
parametro per definire l'output in base al valore diInstanceType
.
aws ec2 describe-instance-types --region
us-east-1
--filters Name=network-info.efa-supported,Values=true --query "InstanceTypes[*].[InstanceType]" --output text | sort
Sistemi operativi supportati
Il supporto del sistema operativo varia a seconda del tipo di processore. La tabella seguente mostra i sistemi operativi supportati.
Sistema operativo | tipi di istanze Intel/ AMD (x86_64 ) |
AWS Tipi di istanze Graviton () arm64 |
---|---|---|
Amazon Linux 2023 | ✓ | ✓ |
Amazon Linux 2 | ✓ | ✓ |
RHEL8 e 9 | ✓ | ✓ |
Debian 10 e 11 | ✓ | ✓ |
Rocky Linux 8 e 9 | ✓ | ✓ |
Ubuntu 20.04, 22.04 e 24.04 | ✓ | ✓ |
SUSELinux Enterprise 15 e versioni successive SP2 | ✓ | ✓ |
Apri SUSE Leap 15.5 e versioni successive | ✓ |
Nota
Ubuntu 20.04 consente il supporto diretto peer quando viene utilizzato con istanze dl1.24xlarge
.
EFAlimitazioni
EFAshanno le seguenti limitazioni:
-
Tutti i tipi di istanze P4d e P5 supportano NVIDIA GPUDirect Remote Direct Memory Access (). RDMA
-
EFAil traffico tra istanze P4d/P4de/ e altri tipi di DL1 istanze non è attualmente supportato.
-
I tipi di istanza che supportano più schede di rete possono essere configurati con una per scheda di rete. EFA Tutti gli altri tipi di istanza supportati ne supportano solo una EFA per istanza.
-
Per
m7g.16xlarge
ec7g.16xlarge
le istanzer7g.16xlarge
dedicate e gli host dedicati non sono supportati quando EFA è collegato un. -
EFAIl traffico OS-Bypass non può attraversare le zone di disponibilità o. VPCs In altre parole, il traffico EFA OS-Bypass non può fluire da una zona di disponibilità o VPC (con o senza una connessione peering) a un'VPCaltra. Ciò non si applica al traffico IP proveniente da. EFA
-
EFAIl traffico OS-Bypass non può essere inviato attraverso sottoreti in una zona locale.
-
EFAIl traffico OS-Bypass non è instradabile. Il normale traffico IP proveniente da rimane instradabile. EFA
-
EFADeve essere membro di un gruppo di sicurezza che consenta tutto il traffico in entrata e in uscita da e verso il gruppo di sicurezza stesso.
-
EFAnon è supportato nelle istanze di Windows.
-
EFAnon è supportato su AWS Outposts.
EFAprezzi
EFAè disponibile come funzionalità EC2 di rete Amazon opzionale che puoi abilitare su qualsiasi istanza supportata senza costi aggiuntivi.