Compute Engine 인스턴스에서 NCCL 실행

이 페이지에서는 A4X Max, A4X, A4, A3 Ultra 인스턴스에서 NCCL/gIB를 사용하여 NCCL 테스트를 실행하는 방법을 설명합니다. 이 페이지의 예는 2노드 NCCL 테스트를 위한 것입니다.

Cluster Director, Cluster Toolkit 또는 GKE와 같은 스케줄러를 사용하는 경우 이 페이지의 단계를 따르지 않아도 됩니다. 대신 다음을 참고하세요.

A3 Mega 및 A3 High에서 NCCL 테스트를 실행하려면 GPUDirect가 사용 설정된 A3 Mega 또는 A3 High 인스턴스 만들기를 참고하세요.

시작하기 전에

NCCL 테스트를 실행하기 전에 런타임 환경에 NCCL/gIB를 설치해야 합니다.

NCCL 테스트 실행

예약되지 않은 환경에서 NCCL 테스트를 실행하려면 다음 단계를 따르세요.

  1. CUDA 12.8 이상을 설치합니다.
  2. Open MPI를 설치합니다.
  3. 컴퓨팅 인스턴스 간에 비대화형 ssh 로그인을 설정합니다.
  4. MPI가 사용 설정된 상태로 nccl-tests를 빌드합니다. nccl-tests를 빌드할 때는 NCCL_HOME=/usr/local/gib를 설정하세요.

NCCL/gIB 패키지와 함께 제공되는 스크립트를 실행하려면 다음을 실행하세요.

# The script assumes binaries at /opt/nccl-tests/build/
$ /usr/local/gib/scripts/run_nccl_tests.sh -d /opt/nccl-tests/build/ -p 22 -t all_gather -m 0x0 -b 4K -e 16G a4-vm-1 a4-vm-2

또한 모든 항목이 포함된 진단 컨테이너 이미지를 http://us-docker.pkg.dev/gce-ai-infra/gpudirect-gib/nccl-plugin-gib-diagnostic:latest에 게시합니다.

다음 예시는 두 개의 A4 인스턴스에 대한 출력을 보여줍니다.

NCCL version 2.25.1+cuda12.8
#
#                                                              out-of-place                       in-place
#       size         count      type   redop    root     time   algbw   busbw #wrong     time   algbw   busbw #wrong
#        (B)    (elements)                               (us)  (GB/s)  (GB/s)            (us)  (GB/s)  (GB/s)
        4096            64     float    none      -1    59.97    0.07    0.06      0    57.49    0.07    0.07      0
        8192           128     float    none      -1    58.17    0.14    0.13      0    58.36    0.14    0.13      0
       16384           256     float    none      -1    59.07    0.28    0.26      0    59.03    0.28    0.26      0
       32768           512     float    none      -1    60.93    0.54    0.50      0    60.79    0.54    0.51      0
       65536          1024     float    none      -1    61.93    1.06    0.99      0    62.17    1.05    0.99      0
      131072          2048     float    none      -1    64.62    2.03    1.90      0    64.48    2.03    1.91      0
      262144          4096     float    none      -1    66.50    3.94    3.70      0    67.05    3.91    3.67      0
      524288          8192     float    none      -1    69.37    7.56    7.09      0    67.83    7.73    7.25      0
     1048576         16384     float    none      -1    117.2    8.95    8.39      0    113.7    9.22    8.64      0
     2097152         32768     float    none      -1    118.8   17.65   16.55      0    118.1   17.75   16.64      0
     4194304         65536     float    none      -1    122.2   34.32   32.17      0    122.6   34.22   32.08      0
     8388608        131072     float    none      -1    132.2   63.44   59.48      0    130.7   64.20   60.18      0
    16777216        262144     float    none      -1    139.2  120.49  112.96      0    139.7  120.07  112.56      0
    33554432        524288     float    none      -1    152.0  220.81  207.01      0    152.1  220.59  206.81      0
    67108864       1048576     float    none      -1    227.6  294.87  276.44      0    225.9  297.08  278.51      0
   134217728       2097152     float    none      -1    431.7  310.87  291.44      0    438.0  306.41  287.26      0
   268435456       4194304     float    none      -1    728.6  368.44  345.41      0    735.9  364.79  341.99      0
   536870912       8388608     float    none      -1   1404.2  382.33  358.44      0   1418.4  378.51  354.85      0
  1073741824      16777216     float    none      -1   2795.8  384.06  360.05      0   2768.9  387.79  363.55      0
  2147483648      33554432     float    none      -1   5440.1  394.75  370.08      0   5418.7  396.31  371.54      0
  4294967296      67108864     float    none      -1    10754  399.40  374.43      0    10746  399.67  374.69      0
  8589934592     134217728     float    none      -1    21434  400.77  375.72      0    21421  401.01  375.95      0
 17179869184     268435456     float    none      -1    42679  402.53  377.38      0    42792  401.48  376.38      0

다음 단계