基于tensorflow指定GPU运行及GPU资源分配的几种方式小结


Posted in Python onFebruary 03, 2020

1. 在终端执行时设置使用哪些GPU(两种方式)

(1) 如下(export 语句执行一次就行了,以后再运行代码不用执行)

基于tensorflow指定GPU运行及GPU资源分配的几种方式小结

(2) 如下

基于tensorflow指定GPU运行及GPU资源分配的几种方式小结

2. 代码中指定(两种方式)

(1)

import os
os.environ["CUDA_VISIBLE_DEVICES"] = "1"

(2)

# Creates a graph.
with tf.device('/gpu:1'):
 a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
 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)
# Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
# Runs the op.
print sess.run(c)

若想使用多个GPU,如下

c = []
for d in ['/gpu:0', '/gpu:1']:
 with tf.device(d):
  a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3])
  b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2])
  c.append(tf.matmul(a, b))
with tf.device('/cpu:0'):
 sum = tf.add_n(c)
# Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
# Runs the op.
print sess.run(sum)

3.GPU资源分配

(1) 设置允许GPU增长

config = tf.ConfigProto()
config.gpu_options.allow_growth = True
session = tf.Session(config=config, ...)

(2) 设置每个GPU内存使用多少

config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.4
session = tf.Session(config=config, ...)

以上这篇基于tensorflow指定GPU运行及GPU资源分配的几种方式小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python模块学习 filecmp 文件比较
Aug 27 Python
python实现将文本转换成语音的方法
May 28 Python
巧用python和libnmapd,提取Nmap扫描结果
Aug 23 Python
通过Python模块filecmp 对文件比较的实现方法
Jun 29 Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
Feb 21 Python
如何使用Python自动控制windows桌面
Jul 11 Python
Python及Pycharm安装方法图文教程
Aug 05 Python
PyTorch和Keras计算模型参数的例子
Jan 02 Python
pycharm 添加解释器的方法步骤
Aug 31 Python
使用python将微信image下.dat文件解密为.png的方法
Nov 30 Python
Python超简单容易上手的画图工具库推荐
May 10 Python
python基础入门之普通操作与函数(三)
Jun 13 Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 #Python
TensorFlow内存管理bfc算法实例
Feb 03 #Python
python numpy数组中的复制知识解析
Feb 03 #Python
opencv python Canny边缘提取实现过程解析
Feb 03 #Python
Pycharm debug调试时带参数过程解析
Feb 03 #Python
Python使用enumerate获取迭代元素下标
Feb 03 #Python
TensorFlow 显存使用机制详解
Feb 03 #Python
You might like
PHP的FTP学习(一)[转自奥索]
2006/10/09 PHP
使用Smarty 获取当前日期时间和格式化日期时间的方法详解
2013/06/18 PHP
php语言的7种基本的排序方法
2020/12/28 PHP
Yii2中使用asset压缩js,css文件的方法
2016/11/24 PHP
JavaScript中“+=”的应用
2007/02/02 Javascript
Html中JS脚本执行顺序简单举例说明
2010/06/19 Javascript
JS图片切换的具体方法(带缩略图版)
2013/11/12 Javascript
jQuery中:first选择器用法实例
2014/12/30 Javascript
Jquery结合HTML5实现文件上传
2015/06/25 Javascript
如何使用vuejs实现更好的Form validation?
2017/04/07 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
React数据传递之组件内部通信的方法
2017/12/31 Javascript
基于nodejs res.end和res.send的区别
2018/05/14 NodeJs
简单的三步vuex入门
2018/05/20 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
2018/05/28 Javascript
jQuery插件实现弹性运动完整示例
2018/07/07 jQuery
Node使用Selenium进行前端自动化操作的代码实现
2019/10/10 Javascript
JS设置自定义快捷键并实现图片上下左右移动
2019/10/17 Javascript
微信小程序后端(java)开发流程的详细步骤
2019/11/13 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
vue双击事件2.0事件监听(点击-双击-鼠标事件)和事件修饰符操作
2020/07/27 Javascript
python函数装饰器用法实例详解
2015/06/04 Python
最大K个数问题的Python版解法总结
2016/06/16 Python
django框架如何集成celery进行开发
2017/05/24 Python
详解Python3操作Mongodb简明易懂教程
2017/05/25 Python
python实现猜数字小游戏
2020/03/24 Python
python3.4控制用户输入与输出的方法
2018/10/17 Python
使用Python的toolz库开始函数式编程的方法
2018/11/15 Python
Python模块常用四种安装方式
2020/10/20 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
2020/12/07 Python
工业设计专业推荐信
2013/10/29 职场文书
大学生未来职业生涯规划书
2014/02/15 职场文书
综治宣传月活动总结
2014/04/28 职场文书
民主评议政风行风活动心得体会
2014/10/29 职场文书
初中军训感言
2015/08/01 职场文书
Java8利用Stream对列表进行去除重复的方法详解
2022/04/14 Java/Android