其他分享
首页 > 其他分享> > 解决pytorch多线程共享全局变量问题:Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessin

解决pytorch多线程共享全局变量问题:Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessin

作者:互联网

原因:在Python3中使用 spawn 或 forkseverver 启动方法才支持在进程之间共享CUDA张量。而我是用的multiprocessing 是使用 fork 创建子进程,不被 CUDA 运行时所支持

在程序最开始的地方加上:

torch.multiprocessing.set_start_method(‘spawn’)

 

标签:spawn,use,CUDA,进程,共享,多线程,multiprocessing
来源: https://www.cnblogs.com/yangyangming/p/16472583.html