TF之Windows:Windows系统下设置Tensorflow运行方式为GPU加速运行的详细攻略
TF之Windows:Windows系统下设置Tensorflow运行方式为GPU加速运行的详细攻略
软件环境
1、第一步安装好CUDA软件程序
推荐文章:
Py之TF/Cuda/Cudnn:Win10下安装深度学习框架Tensorflow+Cuda+Cudnn最简单最快捷最详细攻略
Ubuntu:Ubuntu下安装Anocuda和Tensorflow最详细攻略
2、第二步安装好tensorflow-gpu库
推荐文章:
TensorFlow:深度学习框架TensorFlow的简介、安装、使用方法详细攻略
GPU加速环境设置
1、在配置好GPU环境的TensorFlow中,如果操作没有明确地指定运行设备,那么TensorFlow会优先选择GPU。如果电脑有多个GPU,tensorflow默认全部使用。如果想只使用部分GPU,可以设置CUDA_VISIBLE_DEVICES。
2、TensorFlow程序可以通过tf.device函数来指定运行每一个操作的设备,这个设备可以是本地的CPU或者GPU,也可以是某一台远程的服务器。
3、在默认情况下,TensorFlow只会将运算优先放到/gpu:0上。通过以下程序测试,所有的运算都被放在了/gpu:0上。如果需要将某些运算放到不同的GPU或者CPU上,就需要通过tf.device来手工指定。以下程序给出了一个通过tf.device手工指定运行设备的样例。
4、TensorFlow在生成会话时可以指定allow_soft_placement参数。当allow_soft_placement参数设置为True时,如果运算无法由GPU执行,那么TensorFlow会自动将它放到CPU上执行。
T1、py文件内头部设定
#1、指定GPU环境
import os
print(os.environ['CUDA_VISIBLE_DEVICES'])
#2、指定在第2块GPU上运行
import os
os.environ['CUDA_VISIBLE_DEVICES']='2'
T2、运行终端内设定
#使用第0块、第1块GPU运行
CUDA_VISIBLE_DEVICES=0,1 python train.py #想指定几块GPU就标明GPU序号即可,中间用逗号隔开
2、如果只使用GPU运行
with tf.device("/cpu:0"):
测试是否为GPU加速
1、通过log_device_placement参数来输出运行每一个运算的设备
import tensorflow as tf
a = tf.constant([1.0, 2.0, 3.0], shape=[3], name='a')
b = tf.constant([1.0, 2.0, 3.0], shape=[3], name='b')
c = a + b
# 通过log_device_placement参数来输出运行每一个运算的设备。
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
print (sess.run(c))
查看电脑GPU运行情况
T1、利用自带的资源管理器查看,有两块GPU
赞 (0)