浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置


Posted in Python onJune 30, 2020

服务器有多张显卡,一般是组里共用,分配好显卡和任务就体现公德了。除了在代码中指定使用的 GPU 编号,还可以直接设置可见 GPU 编号,使程序/用户只对部分 GPU 可见。

操作很简单,使用环境变量 CUDA_VISIBLE_DEVICES 即可。

具体来说,如果使用单卡运行 Python 脚本,则可输入

CUDA_VISIBLE_DEVICES=1 python my_script.py

脚本将只使用 GPU1。

在 .py 脚本和 Notebook 中设置,则

import os

os.environ["CUDA_VISIBLE_DEVICES"] = "2"

还可以直接设置临时的环境变量:

export CUDA_VISIBLE_DEVICES="0"

此时该用户的 CUDA 只看得见 GPU0。

至于显存设置,可以设置使用比例(70%):

gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.7)

sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))

也可以按需增长:

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

如果是 Keras 使用 TensorFlow 后端,则可通过如

import tensorflow as tf 
from keras.backend.tensorflow_backend import set_session
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
set_session(tf.Session(config=config))

更改使用设置。

以上这篇浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python网络编程学习笔记(六):Web客户端访问
Jun 09 Python
python3.6.3+opencv3.3.0实现动态人脸捕获
May 25 Python
python 获取字符串MD5值方法
May 29 Python
python解析xml简单示例
Jun 21 Python
Python实现获取系统临时目录及临时文件的方法示例
Jun 26 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 Python
解决python多线程报错:AttributeError: Can't pickle local object问题
Apr 08 Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
Apr 08 Python
浅谈Django前端后端值传递问题
Jul 15 Python
PyCharm 2020.1版安装破解注册码永久激活(激活到2089年)
Sep 24 Python
Python监听键盘和鼠标事件的示例代码
Nov 18 Python
Python 阶乘详解
Oct 05 Python
Tensorflow中批量读取数据的案列分析及TFRecord文件的打包与读取
Jun 30 #Python
使用Tensorflow-GPU禁用GPU设置(CPU与GPU速度对比)
Jun 30 #Python
keras的backend 设置 tensorflow,theano操作
Jun 30 #Python
浅谈TensorFlow中读取图像数据的三种方式
Jun 30 #Python
python中 _、__、__xx__()区别及使用场景
Jun 30 #Python
Django实现内容缓存实例方法
Jun 30 #Python
Pytorch 卷积中的 Input Shape用法
Jun 29 #Python
You might like
php基础教程 php内置函数实例教程
2012/08/21 PHP
做网页的一些技巧(续)
2007/02/01 Javascript
javascript之大字符串的连接的StringBuffer 类
2007/05/08 Javascript
jquery选择器使用详解
2014/04/08 Javascript
Jquery性能优化详解
2014/05/15 Javascript
js网页滚动条滚动事件实例分析
2015/05/05 Javascript
纯JS实现本地图片预览的方法
2015/07/31 Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
2016/04/07 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
Vuejs 用$emit与$on来进行兄弟组件之间的数据传输通信
2017/02/23 Javascript
原生JavaScript实现的简单省市县三级联动功能示例
2017/05/27 Javascript
实例讲解DataTables固定表格宽度(设置横向滚动条)
2017/07/11 Javascript
vue 粒子特效的示例代码
2017/09/19 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
2018/01/03 Javascript
详解原生JS动态添加和删除类
2019/03/26 Javascript
浅谈JavaScript中等号、双等号、 三等号的区别
2020/08/06 Javascript
JavaScript实现商品评价五星好评
2020/11/30 Javascript
[58:37]Serenity vs Fnatic 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
[50:22]完美盛典-2018年度红毯走秀
2018/12/16 DOTA
python每次处理固定个数的字符的方法总结
2013/01/29 Python
总结Python编程中三条常用的技巧
2015/05/11 Python
Python玩转Excel的读写改实例
2019/02/22 Python
Python解析json时提示“string indices must be integers”问题解决方法
2019/07/31 Python
python序列化与数据持久化实例详解
2019/12/20 Python
Python with语句和过程抽取思想
2019/12/23 Python
python mysql 字段与关键字冲突的解决方式
2020/03/02 Python
keras在构建LSTM模型时对变长序列的处理操作
2020/06/29 Python
网络工程师的自我评价
2013/10/02 职场文书
简短证婚人证婚词
2014/01/09 职场文书
简历自我评价模版
2014/01/31 职场文书
项目合作意向书范本
2014/04/01 职场文书
公司人事专员岗位职责
2014/08/11 职场文书
支行行长竞聘报告
2014/11/06 职场文书
2016公司年会通知范文
2015/04/25 职场文书
永不妥协观后感
2015/06/10 职场文书
地心历险记观后感
2015/06/15 职场文书