运行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使用urllib模块开发的多线程豆瓣小站mp3下载器
Jan 16 Python
Python 抓取动态网页内容方案详解
Dec 25 Python
在Django的URLconf中使用命名组的方法
Jul 18 Python
Python简单实现控制电脑的方法
Jan 22 Python
PHP实现发送和接收JSON请求
Jun 07 Python
python粘包问题及socket套接字编程详解
Jun 29 Python
深入浅析Python 中的sklearn模型选择
Oct 12 Python
python下载库的步骤方法
Oct 12 Python
windows中安装Python3.8.0的实现方法
Nov 19 Python
在python shell中运行python文件的实现
Dec 21 Python
解决Pycharm双击图标启动不了的问题(JetBrains全家桶通用)
Aug 07 Python
Python Matplotlib绘制动画的代码详解
May 30 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
全国FM电台频率大全 - 2 天津市
2020/03/11 无线电
基于pear auth实现登录验证
2010/02/26 PHP
php 中英文语言转换类
2011/09/07 PHP
php微信公众账号开发之前五个坑(一)
2016/09/18 PHP
Javascript 面向对象之重载
2010/05/04 Javascript
javascript动态加载二
2012/08/22 Javascript
Extjs4实现两个GridPanel之间数据拖拽功能具体方法
2013/11/21 Javascript
一个网页标题title的闪动提示效果实现思路
2014/03/22 Javascript
js实现ifram取父窗口URL地址的方法
2015/02/09 Javascript
JavaScript获取css行间样式,内连样式和外链样式的简单方法
2016/07/18 Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(二)
2017/01/21 Javascript
js实现无缝滚动图(可控制当前滚动的方向)
2017/02/22 Javascript
兼容浏览器的js事件绑定函数(详解)
2017/05/09 Javascript
红黑树的插入详解及Javascript实现方法示例
2018/03/26 Javascript
js array数组对象操作方法汇总
2019/03/18 Javascript
微信小程序代码上传、审核发布小程序
2019/05/18 Javascript
javascript实现的图片预览和上传功能示例【兼容IE 9】
2020/05/01 Javascript
微信小程序scroll-view实现滚动到锚点左侧导航栏点餐功能(点击种类,滚动到锚点)
2020/06/11 Javascript
vue 解决setTimeOut和setInterval函数无效报错的问题
2020/07/30 Javascript
[41:41]TFT vs Secret Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
解决在pycharm中显示额外的 figure 窗口问题
2019/01/15 Python
python脚本执行CMD命令并返回结果的例子
2019/08/14 Python
TensorBoard 计算图的查看方式
2020/02/15 Python
python 实现简易的记事本
2020/11/30 Python
亚洲最大旅游体验平台:KKday
2017/10/21 全球购物
JACK & JONES瑞典官方网站:杰克琼斯欧式风格男装
2017/12/23 全球购物
威尔逊皮革:Wilsons Leather
2018/12/07 全球购物
酒店应聘自荐信
2013/11/09 职场文书
小学六年级学生评语
2014/04/22 职场文书
民主评议党员自我鉴定
2014/10/21 职场文书
律师催款函范文
2015/06/24 职场文书
大卫科波菲尔读书笔记
2015/06/30 职场文书
行政复议答复书
2015/07/01 职场文书
2016大学生毕业实习心得体会
2016/01/23 职场文书
班组长如何制订适合本班组的工作计划?
2019/07/10 职场文书
python中mongodb包操作数据库
2022/04/19 Python