NVIDIA/nccl-tests

NCCL Tests

해결하는 문제

이 프로젝트는 NVIDIA Collective Communications Library (NCCL)의 성능과 정확성을 검증하기 위한 테스트 세트를 제공합니다. 개발자와 시스템 관리자가 다중 GPU 및 다중 노드 간 통신이 최적의 효율로 작동하고 네트워크를 통해 데이터가 정확히 전송되고 있는지 확인할 수 있도록 합니다.

작동 방식

이 툴킷은 Allreduce, Broadcast, ReduceScatter와 같은 다양한 NCCL 집합 연산을 실행하는 일련의 바이너리로 구성되어 있습니다. 단일 노드에서 다수의 GPU로 실행하거나, MPI(Message Passing Interface)를 사용하여 프로세스를 관리하면서 다수의 노드에 걸쳐 실행할 수 있습니다. 사용자는 데이터 크기, GPU 수, 반복 횟수와 같은 파라미터를 지정하여 지연 시간과 대역폭(특히 "busbw")을 측정할 수 있습니다.

대상 사용자

대규모 모델의 분산 학습 또는 추론에 NVIDIA GPU를 사용하는 고성능 컴퓨팅(HPC) 및 AI 인프라를 다루는 엔지니어를 대상으로 합니다.

주요 특징

  • 성능 벤치마킹: 다양한 데이터 크기와 집합 연산에 대해 대역폭과 지연 시간을 측정합니다.
  • 정확성 검사: -c 플래그를 사용하여 집합 연산의 결과가 수학적으로 올바른지 확인합니다.
  • 다중 노드 지원: MPI와 통합되어 여러 물리적 서버에 걸쳐 테스트를 확장할 수 있습니다.
  • 유연한 구성: 사용자 정의 데이터 유형, 축소 연산(합, 곱, 최소값, 최대값, 평균), CUDA 그래프 캡처를 통한 최적화 실행을 지원합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트