详解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中使用dom模块生成XML文件示例
Apr 05 Python
Python字符编码与函数的基本使用方法
Sep 30 Python
Python 快速实现CLI 应用程序的脚手架
Dec 05 Python
Python实现按中文排序的方法示例
Apr 25 Python
python字符串查找函数的用法详解
Jul 08 Python
python求加权平均值的实例(附纯python写法)
Aug 22 Python
python输出数组中指定元素的所有索引示例
Dec 06 Python
Python基于stuck实现scoket文件传输
Apr 02 Python
Xadmin+rules实现多选行权限方式(级联效果)
Apr 07 Python
python爬虫实现POST request payload形式的请求
Apr 30 Python
Python 在函数上添加包装器
Jul 28 Python
PyQt5爬取12306车票信息程序的实现
May 14 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
雄兵连三大错觉:凯莎没了,凉冰阵亡了,华烨觉得自己又行了
2020/04/09 国漫
php实现的常见排序算法汇总
2014/09/08 PHP
php-fpm重启导致的程序执行中断问题详解
2019/04/29 PHP
JQuery文字列表向上滚动的代码
2013/11/13 Javascript
基于jquery animate操作css样式属性小结
2015/11/27 Javascript
轻松学习jQuery插件EasyUI EasyUI创建树形菜单
2015/11/30 Javascript
基于JavaScript实现Tab选项卡切换效果
2016/11/24 Javascript
JavaScript的变量声明提升问题浅析(Hoisting)
2016/11/30 Javascript
bootstrap fileinput 插件使用项目总结(经验)
2017/02/22 Javascript
JavaScript中使用webuploader实现上传视频功能(demo)
2017/04/10 Javascript
详解layui弹窗父子窗口之间传参数的方法
2018/01/16 Javascript
Vue表单demo v-model双向绑定问题
2018/06/29 Javascript
Node.js log4js日志管理详解
2018/07/31 Javascript
JavaScript实现多态和继承的封装操作示例
2018/08/20 Javascript
解决angular2在双向数据绑定时[(ngModel)]无法使用的问题
2018/09/13 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
2019/02/01 Javascript
解决vue addRoutes不生效问题
2020/08/04 Javascript
js实现点击选项置顶动画效果
2020/08/25 Javascript
Python爬虫之模拟知乎登录的方法教程
2017/05/25 Python
python中日志logging模块的性能及多进程详解
2017/07/18 Python
Python 和 JS 有哪些相同之处
2017/11/23 Python
python+numpy实现的基本矩阵操作示例
2019/07/19 Python
浅谈Python_Openpyxl使用(最全总结)
2019/09/05 Python
python通过matplotlib生成复合饼图
2020/02/06 Python
pytorch:model.train和model.eval用法及区别详解
2020/02/20 Python
css3翻牌翻数字的示例代码
2020/02/07 HTML / CSS
Elemis美国官网:英国的第一豪华护肤品牌
2018/03/15 全球购物
生产主管岗位职责
2013/11/10 职场文书
村庄绿化方案
2014/05/07 职场文书
我的中国梦演讲稿1000字
2014/08/19 职场文书
教师个人年度总结
2015/02/11 职场文书
个人专业技术总结
2015/03/05 职场文书
上班迟到检讨书范文
2015/05/06 职场文书
邓小平文选读书笔记
2015/06/29 职场文书
Java完整实现记事本代码
2022/06/16 Java/Android
Beekeeper Studio开源数据库管理工具比Navicat更炫酷
2022/06/21 数据库