以下是在CentOS上搭建PyTorch集群的步驟:
~/.ssh/authorized_keys
,設置權限為700
(~/.ssh)和600
(authorized_keys)。sudo yum update -y
。sudo yum install python3 python3-pip gcc-c++ make cmake git -y
。pip3 install torch torchvision torchaudio
。pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113
安裝(需替換為實際CUDA版本)。torch.distributed
模塊,關鍵代碼包括:
dist.init_process_group(backend='nccl', init_method='tcp://<master_ip>:<master_port>', world_size=<總節點數>, rank=<當前節點排名>)
。model = DDP(model, device_ids=[rank])
。python -m torch.distributed.launch --nproc_per_node=<GPU數量> your_script.py
。--nnodes
、--node_rank
等參數指定節點信息,例如:python -m torch.distributed.launch --nnodes=2 --node_rank=0 --master_addr="主節點IP" --master_port=12345 your_script.py
。nccl-tests
工具測試GPU通信,或通過日志排查同步問題。注意事項:
12345
)。DistributedSampler
處理數據分片。參考來源: