详解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中比较特别的除法运算和幂运算介绍
Apr 05 Python
Python实现简单拆分PDF文件的方法
Jul 30 Python
Django如何实现内容缓存示例详解
Sep 24 Python
解决PyCharm同目录下导入模块会报错的问题
Oct 13 Python
python整合ffmpeg实现视频文件的批量转换
May 31 Python
在linux下实现 python 监控usb设备信号
Jul 03 Python
多版本python的pip 升级后, pip2 pip3 与python版本失配解决方法
Sep 11 Python
利用python实现冒泡排序算法实例代码
Dec 01 Python
opencv设置采集视频分辨率方式
Dec 10 Python
Python猴子补丁Monkey Patch用法实例解析
Mar 23 Python
python文件目录操作之os模块
May 08 Python
详解python网络进程
Jun 15 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
深入了解 register_globals (附register_globals=off 网站打不开的解决方法)
2012/06/27 PHP
PHP中3种生成XML文件方法的速度效率比较
2012/10/06 PHP
PHP连接Access数据库的方法小结
2013/06/20 PHP
php中mysql操作buffer用法详解
2015/03/19 PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
2018/05/23 PHP
PHP自动载入类文件函数__autoload的使用方法
2019/03/25 PHP
a标签的css样式四个状态
2021/03/09 HTML / CSS
JSONP 跨域访问代理API-yahooapis实现代码
2012/12/02 Javascript
js获得页面的高度和宽度的方法
2014/02/23 Javascript
javascript:window.open弹出窗口的位置问题
2014/03/18 Javascript
使用nodejs、Python写的一个简易HTTP静态文件服务器
2014/07/18 NodeJs
Javascript前端UI框架Kit使用指南之Kitjs简介
2014/11/28 Javascript
jQuery中innerWidth()方法用法实例
2015/01/19 Javascript
jQuery三组基本动画与自定义动画操作实例总结
2020/05/09 jQuery
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
python实现博客文章爬虫示例
2014/02/26 Python
python实现单向链表详解
2018/02/08 Python
浅谈Python traceback的优雅处理
2018/08/31 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
Python Web框架之Django框架Model基础详解
2019/08/16 Python
使用python实现名片管理系统
2020/06/18 Python
Python使用OpenPyXL处理Excel表格
2020/07/02 Python
雅诗兰黛美国官网:Estee Lauder美国
2016/07/21 全球购物
说出数据连接池的工作机制是什么?
2013/04/19 面试题
Java里面StringBuilder和StringBuffer有什么区别
2016/06/06 面试题
MySQL面试题目集锦
2016/04/14 面试题
加拿大探亲邀请信
2014/01/28 职场文书
施工材料员岗位职责
2014/02/12 职场文书
黄继光的英雄事迹材料
2014/02/13 职场文书
高中综合实践活动总结
2014/07/07 职场文书
出国签证在职证明
2014/09/20 职场文书
2015年乡镇信访工作总结
2015/04/07 职场文书
认识实习感想
2015/08/10 职场文书
go语言map与string的相互转换的实现
2021/04/07 Golang
Python生成九宫格图片的示例代码
2021/04/14 Python
Android在Sqlite3中的应用及多线程使用数据库的建议
2022/04/24 Java/Android