但是我加进代码里面速度并没有提高,查了很久才找到问题所在,当你的电脑有两块以上GPU时,上面这两句代码才起作用!
因为我的电脑只有一块GPU,所以需要将参数的“1”改成“0”才可以,否则找不到“1”号设备,它就会默认使用CPU,速度不会提高。
如果是在终端中运行python程序,使用命令:CUDA_VISIBLE_DEVICES=0 python filename.py即可
如果有多块卡,想要指定多个gpu训练,可以这样设置:
def set_gpus(gpu_index): if type(gpu_index) == list: gpu_index = ','.join(str(_) for _ in gpu_index) if type(gpu_index) ==int: gpu_index = str(gpu_index) os.environ["CUDA_VISIBLE_DEVICES"] = gpu_index
通过调用set_gpu函数即可实现。
一定要注意的是,CUDA_VISIBLE_DEVICES,每!一!个!字!母! 必须完全写对,如果不小心写成了CUDA_VISIBLE_DIVICES或者CUDA_VISIABLE_DEVICES ,代码是不会报错的,但是GPU调用不会成功,
Copyright © 2019- howto234.com 版权所有 湘ICP备2022005869号-3
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务