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中逻辑运算符的使用
May 13 Python
python中pandas.DataFrame对行与列求和及添加新行与列示例
Mar 12 Python
Python实现判断一个字符串是否包含子串的方法总结
Nov 21 Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 Python
Python3.4 tkinter,PIL图片转换
Jun 21 Python
python 使用 requests 模块发送http请求 的方法
Dec 09 Python
利用Python半自动化生成Nessus报告的方法
Mar 19 Python
python实现各种插值法(数值分析)
Jul 30 Python
Pytorch中index_select() 函数的实现理解
Nov 19 Python
python dataframe NaN处理方式
Dec 26 Python
jupyter notebook 实现matplotlib图动态刷新
Apr 22 Python
python实现快速文件格式批量转换的方法
Oct 16 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中使用gettext解决国际化问题的例子(i18n)
2014/06/13 PHP
PHP实现对数字分隔加千分号的方法
2019/03/18 PHP
jquery ajax方式直接提交整个表单核心代码
2013/08/15 Javascript
IE10中flexigrid无法显示数据的解决方法
2015/07/26 Javascript
jquery zTree异步加载简单实例讲解
2016/02/25 Javascript
实例讲解JavaScript中call、apply、bind方法的异同
2016/09/13 Javascript
js实现表单提交后不重新刷新当前页面
2016/11/30 Javascript
微信小程序 弹框和模态框实现代码
2017/03/10 Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
2017/03/21 jQuery
VUE实现表单元素双向绑定(总结)
2017/08/08 Javascript
JS实现的简单拖拽购物车功能示例【附源码下载】
2018/01/03 Javascript
jQuery实现的淡入淡出与滑入滑出效果示例
2018/04/18 jQuery
vue 点击按钮增加一行的方法
2018/09/07 Javascript
vscode 使用Prettier插件格式化配置使用代码详解
2020/08/10 Javascript
[26:52]LGD vs EG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python开发如何在ubuntu 15.10 上配置vim
2016/01/25 Python
Python变量和数据类型详解
2017/02/15 Python
python中Apriori算法实现讲解
2017/12/10 Python
通过Python 获取Android设备信息的轻量级框架
2017/12/18 Python
OpenCV-Python实现轮廓检测实例分析
2018/01/05 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
Python3实现购物车功能
2018/04/18 Python
Empty test suite.(PyCharm程序运行错误的解决方法)
2018/11/30 Python
Python实现对特定列表进行从小到大排序操作示例
2019/02/11 Python
Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头
2020/10/22 Python
NFL Game Pass欧洲:在线观看NFL比赛直播和点播,以高清质量播放
2018/08/30 全球购物
澳大利亚手表品牌:Time IV Change
2018/10/06 全球购物
临床医学系毕业生推荐信
2013/11/09 职场文书
中层竞聘演讲稿
2014/01/09 职场文书
一月红领巾广播稿
2014/02/11 职场文书
银行竞聘报告范文
2014/11/06 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
泰坦尼克号观后感
2015/06/04 职场文书
女性健康讲座主持词
2015/07/04 职场文书
php 防护xss,PHP的防御XSS注入的终极解决方案
2021/04/01 PHP
flex弹性布局详解
2022/03/20 HTML / CSS