鏡像安裝
訓推服務部分官方鏡像默認安裝CTCCL,使用以下官方鏡像時,無需自己安裝CTCCL。
pytorch-2.2.0-ctccl0.3.0-cuda12.3-ubuntu20.04-amd64llama2-training-ctccl0.3.0-cuda12.1-pytorch2.2.1-megatron0.2.0-deepspeed0.14.1-ubuntu20.04-amd64
手動安裝
1.確認原本nccl/ctccl安裝位置
如果使用的深度學習框架自帶NCCL,配置的NCCL目錄可能不是默認路徑,可以用以下命令查找。
find / -name "libnccl.so.2" #獲得$NCCL_PATH
2.確認使用的CUDA版本
使用以下命令,查看當前環境依賴的CUDA版本,輸出結果如下圖所示。
nvdia-smi
3.下載CUDA版本對應的CTCCL
用戶根據操作系統和安裝的CUDA版本下載對應的CTCCL獨立安裝包,安裝并使用。
4.使用下載的CTCCL替換環境中原有的libnccl。
| CTCCL | 依賴環境 | 下載地址 |
| v0.4.0 | Ubuntu 20.04 + CUDA12.2 | //jiangsu-10.zos.daliqc.cn/ctccl-n/ctccl/cuda12.2/ubuntu20.04/ctccl0.4.0/libnccl.so.2 |
cp libnccl.so.2 $NCCL_PATH
如果沒有查找到libnccl.so.2文件,可以直接使用cp命令復制到/usr/lib64。
5.確認是否替換成功
在訓練日志中,看到日志輸出對應的ctccl信息。
如:CTCCL version 0. .0(nccl_2.19.4)+cuda12.2
CTCCL版本升級
對于已安裝NCCL或CTCCL舊版本的情況,若要安裝CTCCL新版本,請確保已停止該環境所有的訓練任務,升級方式和安裝方法相同。
CTCCL測試
在NVIDIA平臺上,可以使用NCCL-Test工具測試CTCCL的性能。
測試代碼下載路徑:
//github.com/NVIDIA/nccl-tests.git
編譯:make MPI=1 MPI_HOME={{MPI路徑}} CUDA_HOME={{CUDA路徑}} NCCL_HOME={{NCCL路徑}} -j 40
使用 mpirun 啟動訓練進程:mpirun --allow-run-as-root -np 2 -H IP1,IP2 -x NCCL_IB_HCA=mlx5_2 -x NCCL_IB_QPS_PER_CONNECTION=8 all_reduce_perf -b 8 -e 1G -f 2 -g 8