分享

TF之Windows:Windows系统下设置Tensorflow运行方式为GPU加速运行的详细攻略

 处女座的程序猿 2021-09-28

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

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多