Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Netzwerk
Tipp
Informieren Sie
Ziehen Sie für Anwendungen mit hoher Inter-Node Kommunikation eine höhere Netzwerkbandbreite oder einen Elastic Fabric-Adapter in Betracht
Für verteilte Trainingsworkloads auf Amazon EKS mit hohen Kommunikationsanforderungen zwischen den Knoten sollten Sie Instances mit höherer Netzwerkbandbreite oder Elastic Fabric Adapter (EFA) auswählen. Eine unzureichende Netzwerkleistung kann zu Engpässen bei der Datenübertragung führen und Aufgaben des maschinellen Lernens wie verteiltes Training mit mehreren GPUs verlangsamen. Beachten Sie, dass bei Inferenz-Workloads in der Regel kein hohes Maß an Kommunikation zwischen den Knoten stattfindet.
Beispiel
Verwenden Sie zum Beispiel Karpenter:
apiVersion: v1 kind: Pod metadata: name: ml-workload spec: nodeSelector: karpenter.k8s.aws/instance-network-bandwidth: "100000" # 100 Gbps in Mbps node.kubernetes.io/instance-type: p5.48xlarge # EFA-enabled instance containers: - name: training-job image: `763104351884.dkr.ecr.us-west-2.amazonaws.com/pytorch-inference:2.6.0-gpu-py312-cu124-ubuntu22.04-ec2-v1.6` resources: limits: vpc.amazonaws.com/efa: 1 # Requires EFA device plugin
Stellen Sie sicher, dass Tools wie MPI und NCCL in Ihrem Container-Image installiert sind, um EFA für Schulungsaufgaben nutzen zu können.
Planung der IP-Adressnutzung auf großen GPU-Instances
Standardmäßig weist das Amazon VPC CNI-Plugin IP-Adressen vorab zu, um sicherzustellen, dass Pods schnell geplant werden können, wobei ein vollständiges Ersatz-ENI angeschlossen und mit IPs gefüllt bleibt. Bei großen Instances kann dies dazu führen, dass Dutzende von IPs pro Knoten reserviert werden, selbst wenn nur wenige Pods laufen.
Dieses Missverhältnis tritt häufig bei Trainings- und Inferenz-Workloads auf, bei denen die Pod-Dichte pro Knoten gering ist. Auf Clusterebene, insbesondere bei Autoscaling-Ereignissen, bei denen viele GPU-Knoten mit jeweils wenigen Pods hochgefahren werden, kann dies zu einer Erschöpfung der Subnetz-IP-Adressen führen, obwohl die tatsächliche IP-Auslastung gering ist.
Um dem entgegenzuwirken, stimmen Sie die WARM_ENI_TARGET Variablen, und so WARM_IP_TARGET abMINIMUM_IP_TARGET, dass sie Ihrer tatsächlichen Pod-Dichte entsprechen. Weitere Informationen finden Sie in den ENI- und IP-Zieleinstellungen von VPC CNI
Eine vollständige Anleitung zur Optimierung der IP-Nutzung finden Sie unter Optimierung der IP-Adressnutzung.