多卡运行时明明指定了哪几张卡(不包含0号卡),但是结果还是包含0号卡
多卡运行,主要是靠这两行代码:
os.environ['CUDA_VISIBLE_DEVICES'] = '4,5,6,7'
#表示我们想要使用4,5,6,7这四张卡net = nn.DataParallel(net,device_ids=[0,1,2,3])#4,5,6,7这四张卡我们给它们标号0,1,2,3
但是最后发现还是从0号卡开始,占用的不是4,5,6,7,而是0,1,2,3四张卡
解决方法:
(1)os.environ['CUDA_VISIBLE_DEVICES'] 必须在import torch之前
(2)如果import进来的其他文件中import了torch,那os.environ['CUDA_VISIBLE_DEVICES'] 必须在import这个文件之前
所以,最后,我们将os.environ['CUDA_VISIBLE_DEVICES']放在文件的最开始,最开头的位置,就可以完美解决问题
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
