运行tensorflow python程序,限制对GPU和CPU的占用操作


Posted in Python onFebruary 06, 2020

一般情况下,运行tensorflow时,默认会占用可以看见的所有GPU,那么就会导致其它用户或程序无GPU可用,那么就需要限制程序对GPU的占用。并且,一般我们的程序也用不了所有的GPU资源,只是强行霸占着,大部分资源都不会用到,也不会提升运行速度。

使用nvidia-smi可以查看本机的GPU使用情况,如下图,这里可以看出,本机的GPU型号是K80,共有两个K80,四块可用(一个K80包括两块K40)。

1、如果是只需要用某一块或某几块GPU,可以在运行程序时,利用如下命令运行:CUDA_VISIBLE_DEVICES=0,1 python test.py

这里表示只有GPU 0和1对程序可见,因此也就限制了程序只能用GPU 0和1

同样,也可以在代码里指定

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

如果想只用CPU,不用CPU来运行程序,可以用如下命令(所有GPU都不可见):

CUDA_VISIBLE_DEVICES='' python test.py

或者是

CUDA_VISIBLE_DEVICES="-1" python test.py

2、让tensorflow只按需索取显存,如下代码所示

#only minimum use gpu
gpu_config = tf.ConfigProto()
gpu_config.gpu_options.allow_growth = True
with tf.Session(config = gpu_config) as sess:

前面是对GPU的限制,那如果不用GPU,只用CPU呢?如何限制对CPU的使用呢?

前面也有提到,如果使用命令CUDA_VISIBLE_DEVICES=“”python test.py可以只使用CPU,那如果想只使用部分CPU呢?可以通过如下代码限制

cpu_config = tf.ConfigProto(intra_op_parallelism_threads = 8, inter_op_parallelism_threads = 8, device_count = {'CPU': 8})
with tf.Session(config = cpu_config) as sess:

以上这篇运行tensorflow python程序,限制对GPU和CPU的占用操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现跨文件全局变量的方法
Jul 07 Python
Python open()文件处理使用介绍
Nov 30 Python
在Linux下调试Python代码的各种方法
Apr 17 Python
python中黄金分割法实现方法
May 06 Python
Python中使用支持向量机SVM实践
Dec 27 Python
Python爬虫框架scrapy实现的文件下载功能示例
Aug 04 Python
Python3中列表list合并的四种方法
Apr 19 Python
Django项目使用CircleCI的方法示例
Jul 14 Python
Python使用贪婪算法解决问题
Oct 22 Python
redis数据库及与python交互用法简单示例
Nov 01 Python
Python合并2个字典成1个新字典的方法(9种)
Dec 19 Python
Pytorch实现图像识别之数字识别(附详细注释)
May 11 Python
如何在django中添加日志功能
Feb 06 #Python
keras tensorflow 实现在python下多进程运行
Feb 06 #Python
Scrapy框架实现的登录网站操作示例
Feb 06 #Python
Tensorflow 多线程设置方式
Feb 06 #Python
Scrapy框架基本命令与settings.py设置
Feb 06 #Python
python opencv圆、椭圆与任意多边形的绘制实例详解
Feb 06 #Python
Python输出指定字符串的方法
Feb 06 #Python
You might like
高亮度显示php源代码
2006/10/09 PHP
php去掉字符串的最后一个字符附substr()的用法
2011/03/23 PHP
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
jQuery Tools tab(幻灯片)
2012/07/14 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
2013/11/19 Javascript
Tab切换组件(选项卡功能)实例代码
2013/11/21 Javascript
javascript截取字符串小结
2015/04/28 Javascript
AngularJS基础 ng-dblclick 指令用法
2016/08/01 Javascript
jquery获取select,option所有的value和text的实例
2017/03/06 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
nodejs动态创建二维码的方法
2017/08/12 NodeJs
浅谈AngularJs 双向绑定原理(数据绑定机制)
2017/12/07 Javascript
JavaScript对象拷贝与Object.assign用法实例分析
2018/06/20 Javascript
js canvas实现红包照片效果
2018/08/21 Javascript
vue组件之间的数据传递方法详解
2019/04/19 Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
2019/09/25 Javascript
微信小程序自定义组件components(代码详解)
2019/10/21 Javascript
python sys模块sys.path使用方法示例
2013/12/04 Python
Python正则表达式匹配ip地址实例
2014/10/09 Python
python实现中文分词FMM算法实例
2015/07/10 Python
详解使用Python处理文件目录的相关方法
2015/10/16 Python
Python 多核并行计算的示例代码
2017/11/07 Python
Python实现数据结构线性链表(单链表)算法示例
2019/05/04 Python
Python实现 PS 图像调整中的亮度调整
2019/06/28 Python
python_mask_array的用法
2020/02/18 Python
英国大码女性时装零售商:Evans
2018/08/29 全球购物
大学生个人实习的自我评价
2014/02/15 职场文书
社区活动策划方案
2014/08/21 职场文书
承诺书模板
2014/08/30 职场文书
办公室文员工作自我鉴定
2014/09/19 职场文书
大学生创业事迹材料
2014/12/30 职场文书
环保建议书作文500字
2015/09/14 职场文书
《为人民服务》教学反思
2016/02/20 职场文书
简历自我评价范文
2019/04/24 职场文书
带你彻底理解JavaScript中的原型对象
2021/04/14 Javascript
教你使用Python pypinyin库实现汉字转拼音
2021/05/27 Python