(Opcional) Pruebe la EFA - AWS PCS

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

(Opcional) Pruebe la EFA

Para demostrar la comunicación habilitada por EFA entre dos nodos de un grupo de nodos de cómputo, ejecute el fi_pingpong programa, que se incluye en la instalación del software EFA. Si esta prueba se realiza correctamente, es probable que el EFA esté configurado correctamente.

Para empezar, necesita dos instancias en ejecución en el grupo de nodos de cómputo. Si tu grupo de nodos de cómputo usa capacidad estática, ya debería haber instancias disponibles. En el caso de un grupo de nodos de cómputo que utilice capacidad dinámica, puede lanzar dos nodos mediante el salloc comando. A continuación, se muestra un ejemplo de un clúster con un nombre de grupo de nodos dinámico hpc7g asociado a una cola denominadaall.

% salloc --nodes 2 -p all
salloc: Granted job allocation 6
salloc: Waiting for resource configuration
... a few minutes pass ...
salloc: Nodes hpc7g-[1-2] are ready for job

Averigüe la dirección IP de los dos nodos asignados mediantescontrol. En el siguiente ejemplo, las direcciones son 10.3.140.69 para hpc7g-1 y 10.3.132.211 parahpc7g-2.

% scontrol show nodes hpc7g-[1-2]
NodeName=hpc7g-1 Arch=aarch64 CoresPerSocket=1
   CPUAlloc=0 CPUEfctv=64 CPUTot=64 CPULoad=0.00
   AvailableFeatures=hpc7g
   ActiveFeatures=hpc7g
   Gres=(null)
   NodeAddr=10.3.140.69 NodeHostName=ip-10-3-140-69 Version=24.11.5
   OS=Linux 5.10.218-208.862.amzn2.aarch64 #1 SMP Tue Jun 4 16:52:10 UTC 2024
   RealMemory=124518 AllocMem=0 FreeMem=110763 Sockets=64 Boards=1
   State=IDLE+CLOUD ThreadsPerCore=1 TmpDisk=0 Weight=1 Owner=N/A MCS_label=N/A
   Partitions=efa
   BootTime=2024-07-02T19:00:09 SlurmdStartTime=2024-07-08T19:33:25
   LastBusyTime=2024-07-08T19:33:25 ResumeAfterTime=None
   CfgTRES=cpu=64,mem=124518M,billing=64
   AllocTRES=
   CapWatts=n/a
   CurrentWatts=0 AveWatts=0
   ExtSensorsJoules=n/a ExtSensorsWatts=0 ExtSensorsTemp=n/a
   Reason=Maintain Minimum Number Of Instances [root@2024-07-02T18:59:00]
   InstanceId=i-04927897a9ce3c143 InstanceType=hpc7g.16xlarge

NodeName=hpc7g-2 Arch=aarch64 CoresPerSocket=1
   CPUAlloc=0 CPUEfctv=64 CPUTot=64 CPULoad=0.00
   AvailableFeatures=hpc7g
   ActiveFeatures=hpc7g
   Gres=(null)
   NodeAddr=10.3.132.211 NodeHostName=ip-10-3-132-211 Version=24.11.5
   OS=Linux 5.10.218-208.862.amzn2.aarch64 #1 SMP Tue Jun 4 16:52:10 UTC 2024
   RealMemory=124518 AllocMem=0 FreeMem=110759 Sockets=64 Boards=1
   State=IDLE+CLOUD ThreadsPerCore=1 TmpDisk=0 Weight=1 Owner=N/A MCS_label=N/A
   Partitions=efa
   BootTime=2024-07-02T19:00:09 SlurmdStartTime=2024-07-08T19:33:25
   LastBusyTime=2024-07-08T19:33:25 ResumeAfterTime=None
   CfgTRES=cpu=64,mem=124518M,billing=64
   AllocTRES=
   CapWatts=n/a
   CurrentWatts=0 AveWatts=0
   ExtSensorsJoules=n/a ExtSensorsWatts=0 ExtSensorsTemp=n/a
   Reason=Maintain Minimum Number Of Instances [root@2024-07-02T18:59:00]
   InstanceId=i-0a2c82623cb1393a7 InstanceType=hpc7g.16xlarge

Conéctese a uno de los nodos (en este caso de ejemplohpc7g-1) mediante SSH (o SSM). Tenga en cuenta que se trata de una dirección IP interna, por lo que puede que necesite conectarse desde uno de sus nodos de inicio de sesión si utiliza SSH. Ten en cuenta también que la instancia debe configurarse con una clave SSH mediante la plantilla de lanzamiento del grupo de nodos de cómputo.

% ssh ec2-user@10.3.140.69

Ahora, fi_pingpong ejecútala en modo servidor.

/opt/amazon/efa/bin/fi_pingpong -p efa

Conéctese a la segunda instancia (hpc7g-2).

% ssh ec2-user@10.3.132.211

Se ejecuta fi_pingpong en modo cliente, conectándose al servidor activadohpc7g-1. Debería ver un resultado parecido al del ejemplo siguiente.

% /opt/amazon/efa/bin/fi_pingpong -p efa 10.3.140.69

bytes   #sent   #ack     total       time     MB/sec    usec/xfer   Mxfers/sec
64      10      =10      1.2k        0.00s      3.08      20.75       0.05
256     10      =10      5k          0.00s     21.24      12.05       0.08
1k      10      =10      20k         0.00s     82.91      12.35       0.08
4k      10      =10      80k         0.00s    311.48      13.15       0.08
[error] util/pingpong.c:1876: fi_close (-22) fid 0