pyTorch 指定卡运行代码 和 同一台机器跑多个GPU程序(解决端口号占用)
1 pyTorch 多卡运行代码
一般pytorch多卡运行,最好使用此方法
python -m torch.distributed.launch —nproc_per_node
例如 python -m torch.distributed.launch —nproc_per_node 2 train.py
其中参数 --nproc_per_node 表示每个节点需要多少个进程,一般每个进程独占一个GPU
其他参数
--nnodes 需要节点数(机器数)
--node_rank 节点编号
--master_addr 节点master的IP地址
--master_port 节点master的port号
2 同一台机器跑多个GPU程序(解决端口号占用)
程序1:
python -m torch.distributed.launch —nproc_per_node 2 train.py
程序2
python -m torch.distributed.launch —nproc_per_node 2 train.py —master_port XXXX
因为默认的master_port是29500,所以启动第二个程序时端口号会被占用,需要指定端口号。
端口号查询 查询XXX端口号是否被使用
netstat -anp | grep XXX
如果输出有那么就有程序在使用这个端口号
3 指定特定的GPU卡运行
方式1
使用train.py提供的接口(args参数输入)
方式2
在train.py代码首行加入
import os
os.environ[‘CUDA_VISIBLE_DEVICES’] = ‘ XXX ’
其中XXX为指定卡的序号,从0开始。注意引号
标签:
pytorch
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」