运行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数组条件过滤filter函数使用示例
Jul 22 Python
HTML中使用python屏蔽一些基本功能的方法
Jul 07 Python
Python基于time模块求程序运行时间的方法
Sep 18 Python
教你使用python实现微信每天给女朋友说晚安
Mar 23 Python
Pytorch入门之mnist分类实例
Apr 14 Python
python 文件查找及内容匹配方法
Oct 25 Python
使用Python获取网段IP个数以及地址清单的方法
Nov 01 Python
解决Python找不到ssl模块问题 No module named _ssl的方法
Apr 29 Python
python shell命令行中import多层目录下的模块操作
Mar 09 Python
PyQt5 控件字体样式等设置的实现
May 13 Python
Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)
Jun 23 Python
Django启动时找不到mysqlclient问题解决方案
Nov 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&MYSQL留言板源码
2020/07/19 PHP
php pack与unpack 摸板字符字符含义
2009/10/29 PHP
使用IE的地址栏来辅助调试Web页脚本
2007/03/08 Javascript
css如何让浮动元素水平居中
2015/08/07 Javascript
jQuery简单实现彩色云标签效果示例
2016/08/01 Javascript
AngularJS变量及过滤器Filter用法分析
2016/11/22 Javascript
node.js版本管理工具n无效的原理和解决方法
2016/11/24 Javascript
利用JS实现简单的瀑布流加载图片效果
2017/04/22 Javascript
js禁止Backspace键使浏览器后退的实现方法
2017/09/01 Javascript
微信小程序获取音频时长与实时获取播放进度问题
2018/08/28 Javascript
React如何实现浏览器打印部分内容详析
2019/05/19 Javascript
Python的加密模块md5、sha、crypt使用实例
2014/09/28 Python
使用Python神器对付12306变态验证码
2016/01/05 Python
Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS浅析
2018/05/08 Python
150行Python代码实现带界面的数独游戏
2020/04/04 Python
python 通过文件夹导入包的操作
2020/06/01 Python
Paradigit比利时电脑卖场:购买笔记本、电脑、平板和外围设备
2016/11/28 全球购物
丹尼尔惠灵顿手表天猫官方旗舰店:Daniel Wellington
2017/08/25 全球购物
乌克兰排名第一的在线旅游超市:Farvater.Travel
2020/01/02 全球购物
残疾人创业典型事迹
2014/02/01 职场文书
党员国庆节演讲稿范文2014
2014/09/21 职场文书
党的群众路线批评与自我批评范文
2014/10/16 职场文书
2014年英语教研组工作总结
2014/12/06 职场文书
财务负责人岗位职责
2015/02/03 职场文书
2016新年慰问信范文
2015/03/25 职场文书
2015年组织委员工作总结
2015/04/23 职场文书
2015年采购员工作总结
2015/04/27 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
2015年初一班主任工作总结
2015/05/13 职场文书
民主生活会主持词
2015/07/01 职场文书
vue+spring boot实现校验码功能
2021/05/27 Vue.js
Pytorch 如何加速Dataloader提升数据读取速度
2021/05/28 Python
详解Redis集群搭建的三种方式
2021/05/31 Redis
Python连续赋值需要注意的一些问题
2021/06/03 Python
Java Socket实现多人聊天系统
2021/07/15 Java/Android
分享3个非常实用的 Python 模块
2022/03/03 Python