1.1.torch.nn.DataParallel
我一般在使用多GPU的时候, 会喜欢使用os.environ['CUDA_VISIBLE_DEVICES']来限制使用的GPU个数, 例如我要使用第...我一般都是在程序开始的时候就设定好这个参数, 之后如何将模型加载到多GPU上面呢?...='nccl', init_method='tcp://localhost:23456', rank=0, world_size=1)
第一个参数是pytorch支持的通讯后端, 后面会继续介绍, 但是这里单机多卡..., 然后才能使用DistributedDataParallel进行分发, 之后的使用和DataParallel就基本一样了
2.多机多gpu训练
在单机多gpu可以满足的情况下, 绝对不建议使用多机多gpu...一定要注意的是, 只能修改rank的值, 其他的值一律不得修改, 否则程序就卡死了初始化到这里也就结束了.
2.2.数据的处理-DataLoader
其实数据的处理和正常的代码的数据处理非常类似, 但是因为多机多卡涉及到了效率问题