Tensorflow中tf.ConfigProto()的用法详解


Posted in Python onFebruary 06, 2020

参考Tensorflow Machine Leanrning Cookbook

tf.ConfigProto()主要的作用是配置tf.Session的运算方式,比如gpu运算或者cpu运算

具体代码如下:

import tensorflow as tf

session_config = tf.ConfigProto(
   log_device_placement=True,
   inter_op_parallelism_threads=0,
   intra_op_parallelism_threads=0,
   allow_soft_placement=True)

sess = tf.Session(config=session_config)

a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2,3], name='b')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3,2], name='b')

c = tf.matmul(a,b)
print(sess.run(c))

具体解释

log_device_placement=True

设置为True时,会打印出TensorFlow使用了那种操作

inter_op_parallelism_threads=0

设置线程一个操作内部并行运算的线程数,比如矩阵乘法,如果设置为0,则表示以最优的线程数处理

intra_op_parallelism_threads=0

设置多个操作并行运算的线程数,比如 c = a + b,d = e + f . 可以并行运算

allow_soft_placement=True

有时候,不同的设备,它的cpu和gpu是不同的,如果将这个选项设置成True,那么当运行设备不满足要求时,会自动分配GPU或者CPU。

其他选项

当使用GPU时候,Tensorflow运行自动慢慢达到最大GPU的内存

session_config.gpu_options.allow_growth = True

当使用GPU时,设置GPU内存使用最大比例

session_config.gpu_options.per_process_gpu_memory_fraction = 0.4

是否能够使用GPU进行运算

tf.test.is_built_with_cuda()

另外的处理方法

import tensorflow as tf

sess = tf.Session()

with tf.device('/cpu:0'):
  a = tf.constant([1.0, 3.0, 5.0], shape=[1, 3])
  b = tf.constant([2.0, 4.0, 6.0], shape=[3, 1])

  with tf.device('/gpu:0'):
    c = tf.matmul(a, b)
    c = tf.reshape(c, [-1])

  with tf.device('/gpu:0'):
    d = tf.matmul(b, a)
    flat_d = tf.reshape(d, [-1])

  combined = tf.multiply(c, flat_d)
  print(sess.run(combined))

以上这篇Tensorflow中tf.ConfigProto()的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python打开文件并获取文件相关属性的方法
Apr 23 Python
python实现数独算法实例
Jun 09 Python
python中Switch/Case实现的示例代码
Nov 09 Python
python交互式图形编程实例(一)
Nov 17 Python
对python中for、if、while的区别与比较方法
Jun 25 Python
python实现将读入的多维list转为一维list的方法
Jun 28 Python
Django contenttypes 框架详解(小结)
Aug 13 Python
Appium+python自动化之连接模拟器并启动淘宝APP(超详解)
Jun 17 Python
django最快程序开发流程详解
Jul 19 Python
Python持续监听文件变化代码实例
Jul 22 Python
Python实现一个优先级队列的方法
Jul 31 Python
python中not、and和or的优先级与详细用法介绍
Nov 03 Python
Python continue语句实例用法
Feb 06 #Python
Tensorflow限制CPU个数实例
Feb 06 #Python
如何解决tensorflow恢复模型的特定值时出错
Feb 06 #Python
python range实例用法分享
Feb 06 #Python
tensorflow 报错unitialized value的解决方法
Feb 06 #Python
TensorFlow实现保存训练模型为pd文件并恢复
Feb 06 #Python
解决TensorFlow模型恢复报错的问题
Feb 06 #Python
You might like
PHP 字符串正则替换函数preg_replace使用说明
2011/07/15 PHP
php 模拟POST提交的2种方法详解
2013/06/17 PHP
PHP实现的多彩标签效果代码分享
2014/08/21 PHP
PHP中的traits实现代码复用使用实例
2015/05/13 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
2016/02/26 PHP
thinkphp框架实现删除和批量删除
2016/06/29 PHP
PHP中ajax无刷新上传图片与图片下载功能
2017/02/21 PHP
Jquery 基础学习笔记
2009/05/29 Javascript
IE浏览器下PNG相关功能
2015/07/05 Javascript
js获取及修改网页背景色和字体色的方法
2015/12/29 Javascript
JS中多种方式创建对象详解
2016/03/22 Javascript
微信公众号开发 自定义菜单跳转页面并获取用户信息实例详解
2016/12/08 Javascript
Angular.js通过自定义指令directive实现滑块滑动效果
2017/10/13 Javascript
Vue添加请求拦截器及vue-resource 拦截器使用
2017/11/23 Javascript
解决在vue项目中webpack打包后字体不生效的问题
2018/09/01 Javascript
微信小程序提交form操作示例
2018/12/30 Javascript
JavaScript对象的特性与实践应用深入详解
2018/12/30 Javascript
Vue js 的生命周期(看了就懂)(推荐)
2019/03/29 Javascript
node.js事件轮询机制原理知识点
2019/12/22 Javascript
微信小程序中的列表切换功能实例代码详解
2020/06/09 Javascript
原生js实现表格翻页和跳转
2020/09/29 Javascript
[48:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第二场 1月29日
2021/03/11 DOTA
Python内置函数delattr的具体用法
2017/11/23 Python
Python实现备份MySQL数据库的方法示例
2018/01/11 Python
python按照多个条件排序的方法
2019/02/08 Python
Python安装selenium包详细过程
2019/07/23 Python
css3实现背景颜色渐变让图片不再是唯一的实现方式
2012/12/18 HTML / CSS
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
Android面试题附答案
2014/12/08 面试题
致全体运动员广播稿
2014/02/01 职场文书
护理专科毕业生自荐书范文
2014/02/19 职场文书
实验室的标语
2014/06/20 职场文书
统计工作个人总结
2015/03/03 职场文书
入党群众意见范文
2015/06/02 职场文书
春风化雨观后感
2015/06/11 职场文书
Python基本知识点总结
2022/04/07 Python