本文へ移動
vast-cowのブログ
前のページへ戻る

NVIDIA HPC SDK環境でNCCL Testsをビルドする方法

この記事を編集

NVIDIA HPC SDK環境でnccl-testsをビルドする場合は、CUDA、NCCL、MPIの各パスを正しく設定したうえでmakeを実行します。ここでは、必要な環境変数の設定とビルド手順を簡潔にまとめます。

手順概要

まず、NVIDIA HPC SDKのインストール先を基準に、CUDAとNCCLの場所を指定します。続いて、NCCLに同梱されているHPC-XのOpen MPIをMPI_HOMEとして設定します。

export CUDA_HOME="$NVHPC_ROOT/cuda"
export NCCL_HOME="$NVHPC_ROOT/comm_libs/nccl"
export MPI_HOME="$(readlink -f "$NCCL_HOME")/../hpcx/latest/ompi"
make -kj MPI=1 CUDA_HOME="$CUDA_HOME" NCCL_HOME="$NCCL_HOME" MPI_HOME="$MPI_HOME"

各環境変数の意味

CUDA_HOME

CUDA_HOMEには、NVIDIA HPC SDK内のCUDAディレクトリを指定します。

export CUDA_HOME="$NVHPC_ROOT/cuda"

これにより、ビルド時にCUDAのヘッダやライブラリを正しく参照できます。

NCCL_HOME

NCCL_HOMEには、HPC SDKに含まれるNCCLライブラリの場所を指定します。

export NCCL_HOME="$NVHPC_ROOT/comm_libs/nccl"

nccl-testsはこのパスを使ってNCCL本体を見つけます。

MPI_HOME

MPI_HOMEには、NCCLの周辺ライブラリとして配置されているHPC-XのOpen MPIを指定します。

export MPI_HOME="$(readlink -f "$NCCL_HOME")/../hpcx/latest/ompi"

readlink -fを使うことで、シンボリックリンクを解決した実体パスを基準に、適切なMPIディレクトリを参照できます。

ビルドコマンド

環境変数を設定したあと、以下のコマンドでnccl-testsをビルドします。

make -kj MPI=1 CUDA_HOME="$CUDA_HOME" NCCL_HOME="$NCCL_HOME" MPI_HOME="$MPI_HOME"

コマンドのポイント

まとめ

NVIDIA HPC SDK環境でnccl-testsをビルドするには、CUDA_HOME、NCCL_HOME、MPI_HOMEを正しく設定し、その値をmakeに渡すことが重要です。特に、MPIにはNCCL周辺に含まれるHPC-XのOpen MPIを指定する点がポイントです。これにより、HPC SDK環境に合わせた形でnccl-testsをスムーズにビルドできます。


この記事を編集
この記事を共有:

コメント


前の記事
Web版 ChatGPT にモデル名を表示する方法
次の記事
rootless での `sshd` の実行