tensorflow 使用 cpu 而不使用 gpu 问题
查看 tensorflow 版本
conda list
例如发现 tensorflow 1.10.0
tensorflow-gpu 1.10.0
当两个版本相同时,默认会使用 cpu 版本
如果同时存在 cpu 和 gpu 版本的 tensorflow,系统默认使用版本高的 tensorflow
如果想要使用 gpu 版本的 tensorflow,只需要将 gpu 版本升级比 cpu 高,即可解决
在运行之前先查看GPU的使用情况:
指令:nvidia-smi 备注:查看GPU此时的使用情况
或者
指令:watch nvidia-smi 备注:实时返回GPU使用情况
两种限定GPU占用量的方法:
方法一、设置定量的GPU显存使用量:
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.4 # 占用GPU40%的显存
session = tf.Session(config=config)
方法二、设置最小的GPU显存使用量,动态申请显存:(建议)
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
session = tf.Session(config=config)
指定GPU训练:
方法一、在python程序中设置:
代码:os.environ[‘CUDA_VISIBLE_DEVICES’] = ‘0’ 备注:使用 GPU 0
代码:os.environ[‘CUDA_VISIBLE_DEVICES’] = ‘0,1’ 备注:使用 GPU 0,1
方法二、在执行python程序时候:
指令:CUDA_VISIBLE_DEVICES=2 python yourcode.py
指令:CUDA_VISIBLE_DEVICES=0,1 python yourcode.py
备注:‘=’的左右不允许有空格