TensorFlow实践(15)——使用tf.device方法指定节点执行设备

  • (一)前 言
  • (二)tf.device方法指定节点执行设备
  • (三)总 结

(一)前 言

当我们调用sess.run()方法执行训练操作时,程序内部会首先提取单步训练操作依赖的所有前置操作。这些操作的节点共同组成一幅子图。然后,程序会将子图中的计算节点、存储节点和数据节点按照各自的执行设备分类,相同设备上的节点组成了一幅局部图,每个设备的局部图在实际执行是,根据节点间的依赖关系将各个节点有序地加载到设备上执行。对于单机程序来说,相同机器上不同编号的CPU或是GPU就是不同的设备,我们可以在创建节点时指定执行该节点的设备,这一节我们就来接介绍如何使用tf.device方法指定节点执行设备。

(二)tf.device方法指定节点执行设备

import tensorflow as tf# 在0号CPU上执行的存储节点
with tf.device("/cpu:0"):v = tf.Variable(2.0)
# 在0号GPU上执行的计算节点
with tf.device("/gpu:0"):z = tf.matmul(x, y)

同时,tf.device方法也支持嵌套使用,如果我们希望把计算量小的存储节点和数据节点放在CPU上执行,把计算量大的节点放在GPU上执行,可以按照以下方式实现:

with tf.device("/cpu:0"):
import tensorflow as tf# 在0号CPU上执行的存储节点
with tf.device("/cpu:0"):x = tf.placeholder(···)w = tf.placeholder(···)b = tf.placeholder(···)
# 在0号GPU上执行的计算节点    with tf.device("/gpu:0"):y = tf.matmul(w, x) + by_ = tf,placeholder(···)

(三)总 结

在本节中我们介绍了如何使用tf.device方法指定节点的执行设备,有任何问题评论区留言,我会尽快回复,谢谢支持!

TensorFlow实践(15)——使用tf.device方法指定节点执行设备相关推荐

  1. tf.device()指定tensorflow运行的GPU或CPU设备

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

  2. tensorflow tf.device() (返回指定要用于新创建的操作的默认设备的上下文管理器)

    @tf_export("device") def device(device_name_or_function):"""Wrapper for `Gr ...

  3. TensorFlow实践(16)——tf.enable_eager_execution方法

    TensorFlow实践(16)--tf.enable_eager_execution方法 (一)前 言 (二)代码示例 (三)总 结 (一)前 言 在即将到来的TensorFlow2.0中将对部分机 ...

  4. 【神经网络与深度学习-TensorFlow实践】-中国大学MOOC课程(八)(TensorFlow基础))

    [神经网络与深度学习-TensorFlow实践]-中国大学MOOC课程(八)(TensorFlow基础)) 8 TensorFlow基础 8.1 TensorFlow2.0特性 8.1.1 Tenso ...

  5. 独家 | 10分钟带你上手TensorFlow实践(附代码)

    原文标题:TensorFlow Tutorial: 10 minutes Practical TensorFlow lesson for quick learners 作者:ANKIT SACHAN ...

  6. 【神经网络与深度学习-TensorFlow实践】-中国大学MOOC课程(四)(Python语言基础(2))

    [神经网络与深度学习-TensorFlow实践]-中国大学MOOC课程(四)(Python语言基础(2)) 第4讲 Python语言基础(2) 4.1 内置数据结构 4.1.1 序列数据结构(sequ ...

  7. 全球名校课程作业分享系列(8)--斯坦福计算机视觉与深度学习CS231n之tensorflow实践

    课程作业原地址:CS231n Assignment 1 作业及整理:@邓妍蕾 && @郭承坤 && @寒小阳 时间:2018年2月. 出处:http://blog.cs ...

  8. 强化学习从基础到进阶-案例与实践[3]:表格型方法:Sarsa、Qlearning;蒙特卡洛策略、时序差分等以及Qlearning项目实战

    [强化学习原理+项目专栏]必看系列:单智能体.多智能体算法原理+项目实战.相关技巧(调参.画图等.趣味项目实现.学术应用项目实现 专栏详细介绍:[强化学习原理+项目专栏]必看系列:单智能体.多智能体算 ...

  9. TensorFlow——如何查看当前版本TF编译使用的CUDA和cuDNN的编译版本

    1 前言 昨天在调试景润给的R2CNN代码,是使用TensorFlow实现的,配置的时候出现了各种问题,而TF的官方文档的确写的不是很好,(之前还是高看他们了,的确还是PyTorch容易调试一些),当 ...

最新文章

  1. 1874畅通工程续(dijkstra算法)
  2. 使用MetaPost绘制流程图
  3. 软件质量管理之困境与对策思考
  4. 6.6.1最优二叉树(赫夫曼树)
  5. jQuery源码研究分析学习笔记-jQuery.fn.init()(五)
  6. FixedThreadPool 使用方法测试
  7. DDD实战成绩管理---用户故事
  8. Spring Security(三十六):12. Spring MVC Test Integration
  9. Screens的开发一
  10. socket编程-阻塞和非阻塞
  11. 如何利用迅雷下载百度云?
  12. RemObjects Elements 11.0
  13. Linux命令之snmpwalk命令
  14. python 饼图笔记 两个饼图 双饼图 复合饼图 两个饼图 环形图
  15. java adsl 拨号_[zt]利用脚本实现ADSL自动拨号上网
  16. RV-LINK:用RISC-V开发板做RISC-V仿真器
  17. 大数据的特征(4V)
  18. 服务搭建篇(一) 搭建基于prometheus + node_exporter + grafana + Alertmanager 的监控报警系统 , 保姆级教程
  19. yum linux centos安装mysql详细教程
  20. 高项_第七章项目成本管理

热门文章

  1. STM32三个ADC同步规则采样
  2. Java中在指定范围内生成整型、长整型、双精度随机数流
  3. CPT,CPM,CPS
  4. 02.Response
  5. ROS2 基础概念 服务
  6. SSM框架搭建详细解析
  7. 解决tar 时间戳XXX是未来的XXX秒之后问题
  8. 全景拼接python旗舰版
  9. 国产android智能手表,国产安卓手机越来越骚了 这回连手表都用上了
  10. 【SQL Server】入门教程-基础篇(三)