详解tf.device()指定tensorflow运行的GPU或CPU设备实现


Posted in Python onFebruary 20, 2021

在tensorflow中,我们可以使用 tf.device() 指定模型运行的具体设备,可以指定运行在GPU还是CUP上,以及哪块GPU上。

设置使用GPU

使用 tf.device('/gpu:1') 指定Session在第二块GPU上运行:

import tensorflow as tf
 
with tf.device('/gpu:1'):
  v1 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v1')
  v2 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v2')
  sumV12 = v1 + v2
 
  with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
    print sess.run(sumV12)

ConfigProto() 中参数 log_device_placement=True  会打印出执行操作所用的设备,以上输出:

详解tf.device()指定tensorflow运行的GPU或CPU设备实现

如果安装的是GPU版本的tensorflow,机器上有支持的GPU,也正确安装了显卡驱动、CUDA和cuDNN,默认情况下,Session会在GPU上运行:

import tensorflow as tf
 
v1 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v1')
v2 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v2')
sumV12 = v1 + v2
 
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
  print sess.run(sumV12)

默认在GPU:0上执行:

详解tf.device()指定tensorflow运行的GPU或CPU设备实现

设置使用cpu

tensorflow中不同的GPU使用/gpu:0和/gpu:1区分,而CPU不区分设备号,统一使用 /cpu:0

import tensorflow as tf
 
with tf.device('/cpu:0'):
  v1 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v1')
  v2 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v2')
  sumV12 = v1 + v2
 
  with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
    print sess.run(sumV12)

详解tf.device()指定tensorflow运行的GPU或CPU设备实现

到此这篇关于详解tf.device()指定tensorflow运行的GPU或CPU设备实现的文章就介绍到这了,更多相关tensorflow运行GPU或CPU内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python strip lstrip rstrip使用方法
Sep 06 Python
Python模块学习 re 正则表达式
May 19 Python
使用rpclib进行Python网络编程时的注释问题
May 06 Python
Python实现分割文件及合并文件的方法
Jul 10 Python
Python中input与raw_input 之间的比较
Aug 20 Python
python判断字符串是否是json格式方法分享
Nov 07 Python
Python中的函数作用域
May 07 Python
运行django项目指定IP和端口的方法
May 14 Python
python3多线程知识点总结
Sep 26 Python
python实现简单井字棋小游戏
Mar 05 Python
Python更换pip源方法过程解析
May 19 Python
浅析python字符串前加r、f、u、l 的区别
Jan 24 Python
Python 的 f-string 可以连接字符串与数字的原因解析
Feb 20 #Python
安装不同版本的tensorflow与models方法实现
Feb 20 #Python
python爬虫scrapy基本使用超详细教程
Feb 20 #Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
Feb 20 #Python
conda安装tensorflow和conda常用命令小结
Feb 20 #Python
TensorFlow低版本代码自动升级为1.0版本
Feb 20 #Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
Feb 20 #Python
You might like
如何在PHP中使用Oracle数据库(2)
2006/10/09 PHP
一步一步学习PHP(8) php 数组
2010/03/05 PHP
深入PHP数据加密详解
2013/06/18 PHP
php正则匹配html中带class的div并选取其中内容的方法
2015/01/13 PHP
Laravel 5 学习笔记
2015/03/06 PHP
textarea的value是html文件源代码,存成html文件的代码
2007/04/20 Javascript
仅img元素创建后不添加到文档中会执行onload事件的解决方法
2011/07/31 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
jquery中键盘事件小结
2016/02/24 Javascript
基于Bootstrap的UI扩展 StyleBootstrap
2016/06/17 Javascript
jQuery实现的放大镜效果示例
2016/09/13 Javascript
浅谈JQ中mouseover和mouseenter的区别
2016/09/13 Javascript
详解自动生成博客目录案例
2016/12/09 Javascript
使用nodejs爬取前程无忧前端技能排行
2017/05/06 NodeJs
记一次webapck4 配置文件无效的解决历程
2018/09/19 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
vue动态子组件的两种实现方式
2019/09/01 Javascript
使用axios请求时,发送formData请求的示例
2019/10/29 Javascript
nodejs dgram模块广播+组播的实现示例
2019/11/04 NodeJs
js、jquery实现列表模糊搜索功能过程解析
2020/03/27 jQuery
[01:17:47]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
基于python3 类的属性、方法、封装、继承实例讲解
2017/09/19 Python
Python基于Floyd算法求解最短路径距离问题实例详解
2018/05/16 Python
python安装virtualenv虚拟环境步骤图文详解
2019/09/18 Python
Python pandas RFM模型应用实例详解
2019/11/20 Python
Python Lambda函数使用总结详解
2019/12/11 Python
Python配置pip国内镜像源的实现
2020/08/20 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
2020/12/16 Python
华为C++笔试题
2014/08/05 面试题
英语系本科生求职信范文
2013/12/18 职场文书
机关副主任个人四风问题整改措施
2014/09/26 职场文书
无刑事犯罪记录证明范本
2014/09/29 职场文书
干部作风建设心得体会
2014/10/22 职场文书
群众路线个人剖析材料及整改措施
2014/11/04 职场文书
2015年社区工作总结
2015/04/08 职场文书
Python如何使用循环结构和分支结构
2022/04/13 Python