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 相关文章推荐
Linux环境下MySQL-python安装过程分享
Feb 02 Python
使用PDB模式调试Python程序介绍
Apr 05 Python
浅析Python中signal包的使用
Nov 13 Python
Python 遍历列表里面序号和值的方法(三种)
Feb 17 Python
Python3计算三角形的面积代码
Dec 18 Python
Java编程迭代地删除文件夹及其下的所有文件实例
Feb 10 Python
Python循环实现n的全排列功能
Sep 16 Python
python rsa实现数据加密和解密、签名加密和验签功能
Sep 18 Python
Python Numpy 自然数填充数组的实现
Nov 28 Python
PyCharm上安装Package的实现(以pandas为例)
Sep 18 Python
详解vscode实现远程linux服务器上Python开发
Nov 10 Python
python3中apply函数和lambda函数的使用详解
Feb 28 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 Token(令牌)设计
2008/03/15 PHP
深入PHP获取随机数字和字母的方法详解
2013/06/06 PHP
php 检查电子邮件函数(自写)
2014/01/16 PHP
php批量删除超链接的实现方法
2015/10/19 PHP
PHP错误Warning:mysql_query()解决方法
2015/10/24 PHP
TinyMCE 新增本地图片上传功能
2010/11/05 Javascript
循环 vs 递归浅谈
2013/02/28 Javascript
jquery ajax实现下拉框三级无刷新联动,且保存保持选中值状态
2013/10/29 Javascript
js分页代码分享
2014/04/28 Javascript
即将发布的jQuery 3 有哪些新特性
2016/04/14 Javascript
JavaScript实现单英文金山打字通
2020/07/24 Javascript
通过js示例讲解时间复杂度与空间复杂度
2019/08/06 Javascript
vue 将多个过滤器封装到一个文件中的代码详解
2020/09/05 Javascript
用smtplib和email封装python发送邮件模块类分享
2014/02/17 Python
python通过装饰器检查函数参数数据类型的方法
2015/03/13 Python
Python中的random()方法的使用介绍
2015/05/15 Python
python实现马耳可夫链算法实例分析
2015/05/20 Python
python图像处理之反色实现方法
2015/05/30 Python
浅谈python多进程共享变量Value的使用tips
2019/07/16 Python
Python类及获取对象属性方法解析
2020/06/15 Python
Python urllib库如何添加headers过程解析
2020/10/05 Python
Django 实现图片上传和下载功能
2020/12/31 Python
中国专业的综合网上购物商城:京东
2016/08/02 全球购物
美国机场停车位预订:About Airport Parking
2018/03/26 全球购物
高校生生产实习自我鉴定
2013/09/21 职场文书
销售部主管岗位职责
2013/12/18 职场文书
安全承诺书范文
2014/03/26 职场文书
个人作风建设心得体会
2014/10/22 职场文书
婚礼父母答谢词
2015/01/04 职场文书
大学生简历自我评价2015
2015/03/03 职场文书
2015年公司工作总结
2015/04/25 职场文书
党支部评议意见
2015/06/02 职场文书
烈士陵园扫墓感想
2015/08/07 职场文书
浅谈@Value和@Bean的执行顺序问题
2021/06/16 Java/Android
聊一聊Redis与MySQL双写一致性如何保证
2021/06/26 Redis
Redis性能监控的实现
2021/07/09 Redis