Tensorflow+GPU做物体检测,CPU和内存都高占用?

如题, 我在用Tensorflow Object Detection做物体检测的时候, 用mobilenetV1模型, 然后在session运行的时候发现占用的CPU很高, i7的占到了80%, 很不解用到CPU做了什么, 请大神解答...

0

1个回答

把你的batch设置大一些看看,另外你的cpu是不是4核?4核占用80%很正常,即便是gpu跑,也是需要3、4个核的。你可以试试找一个Xeon E5的平台,16核以上的,应该就不会占那么多了。
我用36核的平台,CPU占用大约5%。
内存的话,和你装入的数据有关,如果你使用了numpy/pandas的一些操作,会复制大量的数组,就会占用很多内存。

1
qq_29444093
满儿的秦先生 谢谢解答, 我的cpu是六核的, 所以可能像你说的占用比例高, 另外您的意思是, 即使是网络本身用GPU跑, 也仍然难以避免CPU的这部分占用是吗
8 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
深度学习笔记:windows+tensorflow 指定GPU占用内存(解决gpu爆炸问题)
目录nnnn目录n前言n一、指定显卡n二、限制GPU用量n1、设置使用GPU的百分比nnn三、指定GPU并且限制GPU用量n指定第一块GPU可用nnnnnn前言nn最近在使用深度学习,跑了一个大的model,然后GPU炸了,上网搜索了一下如何解决这个问题,做下笔记,分享给大家。 nkeras在使用GPU的时候有个特点,就是默认全部占满显存。 这样如果有多个模型都需要使用GPU跑的话,那么限制是很大...
运行tensorflow python程序,限制对GPU和CPU的占用
一般情况下,运行tensorflow时,默认会占用可以看见的所有GPU,那么就会导致其它用户或程序无GPU可用,那么就需要限制程序对GPU的占用。并且,一般我们的程序也用不了所有的GPU资源,只是强行霸占着,大部分资源都不会用到,也不会提升运行速度。使用nvidia-smi可以查看本机的GPU使用情况,如下图,这里可以看出,本机的GPU型号是K80,共有两个K80,四块可用(一个K80包括两块K4...
tensorflow训练时内存持续增加并占满
记录一次小白的tensorflow学习过程,也为有同样困扰的小白留下点经验。先说我出错和解决的过程。在做风格迁移实验时,使用预加载权重的VGG19网络正向提取中间层结果,结果因为代码不当,在遍历图片提取时内存持续增长,导致提取几十个图片的特征内存就满了。原因是在对每一张图片正向传播结束后,都会在留下中间信息。具体地说是在我将正向传播的代码与模型的代码分离了,在每次遍历图片时都会正向传播,在tens...
关于tensorflow训练GPU占用问题
大家在训练数据的时候,经常会遇到tensorflow会占用发现的所有GPU的情况,这样会影响其他人使用GPU,因此我们可以在使用时设定选用的GPU。nnnimport osnos.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID" # see issue #152nos.environ["CUDA_VISIBLE_DEVICES"]="0"nn这样我们就可以避免...
tensorflow基于cpu的检测
利用python进行tensorflow的检测,亲测有效。基于cpu的操作,接下来就是gpu的
让tensorflow在GPU上训练时不要占用全部内存
tensorflow默认训练时占用一块GPU的全部内存,在训练代码python文件中加入以下代码,可以避免这种问题,给实验室的小伙伴们留一点空间。nnngpu_options = tf.GPUOptions(allow_growth=True)nsess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))nnn...
深度学习PyTorch,TensorFlow中GPU利用率较低,CPU利用率很低,且模型训练速度很慢的问题总结与分析
在深度学习模型训练过程中,在服务器端或者本地pc端,输入nvidia-smi来观察显卡的GPU内存占用率(Memory-Usage),显卡的GPU利用率(GPU-util),然后采用top来查看CPU的线程数(PID数)和利用率(%CPU)。往往会发现很多问题,比如,GPU内存占用率低,显卡利用率低,CPU百分比低等等。接下来仔细分析这些问题和处理办法。nn1. GPU内存占用率问...
管理员解决深度学习服务器GPU内存占用问题
解决方法rn利用Linux自带的管道命令rnnvidia-smi | grep pythonrn获取到GPU中的进程号rn然后通过rnps -lA | grep pidrn找到进程的状态rn若为S(sleep),并且超过容忍时间,则kill掉rn测试python执行centos7系统命令的情况rnimport osrnrngpu_status = os.popen("nvidia-smi | grep python")...
Zero volatile GPU-Util but high GPU Memory Usage,tensorflow训练时候显存占满,但是执行效率很低,GPU使用率很低。
Tensorflow 调用GPU训练的时候经常遇见 ,显存占据的很大,但是使用率很低,也就是Zero volatile GPU-Util but high GPU Memory Usage。rn网上找到这样一个答案,意思就是自己run 的很多东西是没有用的,但是会占据大量显存。rn后来找到问题了,rn 这两个语句,是针对所有的data_x data_y 操作的,而这两个部分又比较大(大概几百兆)所
tensorflow-gpu 和cpu使用训练ssd模型感想(显卡内存不足解决办法)
   ssd 模型对于GPU ,CPU来说都适用,但是通过我的训练de'd得到的一下经验来说,GPU训练时基本不到1秒每步,而cpu在使用avx2的基础上,训练的每步需要将近1分钟,可想而知GPU训练是cpu训练的60倍左右,这将大大提高大家的训练速度。nn  而且,之前我yong用cpu版本训练时ssd model训练1000步需要花7-8个小时,现在用GPU只需要10分钟就足以,由此可见,对于...
linux xorg占用显存过大解决
一、通过Ctrl + Alt +F1~F6任意一个进入文字界面;登录,nvidia-smi查看显存占用二、回到图形界面:Ctrl + Alt + F7再次nvidia-smi查看显存占用,可发现显存已经明显降了下来...
tensorflow使用GPU训练时的显存占用问题
最近用GoogleNet (inception-v3)做fine-tune训练时,遇到了一个问题。当我选择单个GPU训练时候,服务器中所有的GPU显存都会被占满,如下图所示:nnn    出现以上问题的原因是tensorflow在训练时默认占用所有GPU的显存。n    可以通过以下方式解决该问题:n1、在构造tf.Session()时候通过传递tf.GPUOptions作为可选配置参数
tensorflow查看电脑的CPU和GPU
1、查看电脑GPU和CPUimport osnfrom tensorflow.python.client import device_libnos.environ["TF_CPP_MIN_LOG_LEVEL"] = "99"nnif __name__ == "__main__":n print(device_lib.list_local_devices())2、指定CPU或GPU进行计算 ...
Tensorflow占用GPU显存问题
我使用Pytorch进行模型训练时发现真正模型本身对于显存的占用并不明显,但是对应的转换为tensorflow后(权重也进行了转换),发现Python-tensorflow在使用时默认吃掉所有显存,并且不手动终结程序的话显存并不释放(我有两个序贯的模型,前面一个跑完后并不释放占用显存)(https://github.com/tensorflow/tensorflow/issues/1727),这一...
Tensorflow利用GPU训练注意事项
训练前要用nvidia-smi来查看一下当前GPU的使用情况,不要一下子就放上去跑把大家一起挤挂了,这是负责任的行为。之前在公司就遇到过训练了好久,结果一个新来的就把服务器挤跪了。。。n如果机器上面的GPU之间不能够通信,那就先设定一块要用的GPU吧,在终端上面输入命令export CUDA_VISIBLE_DEVICES=0(数字是GPU的编号)。 n用Tensorflow创建session的时候
keras tensorboard的使用, 设置指定GPU及其内存, 强制只使用cpu
1.强制只使用cpu: import osnos.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID" # see issue #152nos.environ["CUDA_VISIBLE_DEVICES"] = ""2. GPU内存占用限制以及Tensorboard的一般使用补充:主动设定占用内存或者自适应设置GPU内存大小开始学习用TensorFlow,这东...
Caffe tensorflow和keras跑动程序时限制GPU所占显存和强制使用cpu
应用场景:nn      在实验室或者公司时,一般会遇到服务器紧张的情况。在这种情况下,可以通过限制GPU所占显存来使得一台服务器可以同时跑几个模型,当然,土豪实验室或者公司不用担心这个问题。nn由于暂时只接触了Caffe,Tensorflow和keras,现只提供这三种深度学习框架的控制方法。nn解决办法:nn      对于caffe而言,默认不是占满GPU全部的显存,而是通过网络设置batc...
pytorch计算模型的显存占用率和节省内存技巧
计算模型的显存占用率nn如何计算模型以及中间变量的显存占用大小可以参考此文。n如何在Pytorch中精细化利用显存,牺牲计算速度减少显存用量,将计算过程分为两半,先计算一半模型的结果,保存中间结果再计算后面一半的模型。n再次浅谈Pytorch中的显存利用问题(附完善显存跟踪代码),借用Pytorch-Memory-Utils这个工具来检测我们在训练过程中关于显存的变化情况,分析出我们如何正确释放多...
Tensorflow 内存占用
Tensflow 内存占用有以下特点: n一 : 默认瞬间占用所有GPU的所有显存;(但是可以设置占用上限, 以及动态占用)nn# 动态占用: 根据需要自主申请显存nconfig = tf.ConfigProto()nconfig.gpu_options.allow_growth = Truensession = tf.Session(config=config, ...)nn# 占中上限: 设置...
程序退出后依旧占用GPU和内存资源时强制kill掉进程的方法
【时间】2018.12.13nn【题目】程序退出后依旧占用GPU和内存资源时强制kill掉进程的方法nn当使用GPU跑程序时,程序退出后依旧占用GPU和内存资源,进程依旧存在时,可以用下面的方法强制kill掉进程:nn(1)请先查看占用资源的进程归属方是谁,以及运行的是什么指令:nn   ps -f PID号n(2)然后确认该进程可以kill掉情况下直接杀掉:nn    kill -9 PID号 ...
TensorFlow指定特定GPU以及占用显存的比例
因为LZ是使用GPU服务器跑TensorFlow,而TensorFlow默认的是占用所有GPU,于是为了不影响其他同学使用GPU,于是就试验和总结了一下TensorFlow指定GPU的方法。。n环境n系统:Ubuntu14.04nTensorFlow:v1.3nGPU 8个GTX1080,第一列的0~7的数是GPU的序号nnn一.设置指定GPUnn1.一劳永逸的方法,直接在~/.
Svchost.exe 程序占用CPU高
问题程序解释:nnSvchost.exe是一个属于微软Windows操作系统的系统程序nn官方解释:Svchost.exe 是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。这个程序对系统的正常运行是非常重要,而且是不能被结束的。nn nn问题说明:nnSvchost.exe占用CPU百分之90以上,使用任务管理器结束任务或者重启后反复存在并占用CPUnn nn问题解决:nn先使用杀毒软...
tensorflow 动态分配内存以及设置使用那块gpu的方法
动态内存nnconfig = tf.ConfigProto() nconfig.gpu_options.allow_growth=True nsess = tf.Session(config=config)nnnn如何控制GPU资源率nnn(参考:http://blog.csdn.net/u012436149/article/details/53837651)nnallow growthnnc
tensorflow内存问题
tensorflow在训练时默认占用所有GPU的显存,提示内存已满!nnnn1. 动态分配内存 n 当allow_growth设置为True时,分配器将不会指定所有的GPU内存,而是根据需求增长nnconfig = tf.ConfigProto() nconfig.gpu_options.allow_growth=True nsess = tf.Session(config=config)nn...
GPU利用率低的原因
1. CPU数据读取更不上:读到内存+多线程+二进制文件(比如tf record)nn2. GPU温度过高,使用功率太大:每次少用几个GPU,降低功耗(但是多卡的作用何在?)...
caffe训练时总是会占用0号GPU卡
Sometimes, we will change the default GPU 0  to others when  we are training deep learning models using Caffe, however, we also find that gpu 0 is always used (~100 MBs) rn.To solver this, we can simp
tensorflow之内存暴涨问题
在用tensorflow实现一些模型的时候,有时候我们在运行程序的时候,会发现程序占用的内存在不断增长。最后内存溢出,程序被kill掉了。nn这个问题,其实有两个可能性。一个是比较常见,同时也是很难发现的。这个问题的解决,需要我们知道tensorflow在构图的时候,是没有所谓的临时变量的,只要有operator。那么tensorflow就会在构建的图中增加这个operator所代表的节点。所以,...
NVIDIA查看CPU、内存、GPU使用情况
1 TX2查看方法nn内存nnnfree -mnn系统内核nnnuname -annCPU信息nnnlscpunnUSB设备nnnlsusbnnCPU占用情况nnnsudo apt-get install htopnhtopnnGPU使用情况nnnsudo ~/tegrastatsnn会输出如下所示的内容,注意一定要加sudo,否则输出的信息不完整nnnRAM 1920/7851MB (lfb 1...
Tensoflow sess.run导致的内存溢出
下面是调用模型进行批量测试的代码(出现溢出),开始以为导致溢出的原因是数据读入方式问题引起的,用了tf , PIL和cv等方式读入图片数据,发现越来越慢,内存占用飙升,调试时发现是sess.run这里出了问题(随着for循环进行速度越来越慢)。nnnn # Creates graph from saved GraphDefn create_graph(pb_path)n...
模拟一次linux 高CPU 占用
n n n 模拟一次linux 高CPU 占用n通过linux top 命令 发现了linux 服务器 占用 很高,出现了故障。n在生产环境中,如何来定位问题呢?n如果发现是我们的应用程序问题,如何快速定位到应用代码?n1 .top命令 发现问题n通过top 命令 结果 发现 CPU 占用很高,PID = 12023 ,是我们的java 项目 程序。n这种情况 我们就...
从CPU与GPU利用率,到GPU与CPU差别的思考
注:本版关于GPU的内容均是是经过实测数据提供,具有版权所有n n 简介: GPU与CPU貌似差别不大的两个东西,然而,从逻辑结构,到原理,到性能,到功能,再到在物理设备中扮演的角色来讲,压根就不是同一个东西,甚至可以说,完全不可以类比。n首先考虑GPU利用率: n因为要对GPU物理设备进行压力测试和功耗测试,那么就需要设定GPU利用率分别为25%,50%,75%,100%类似的参数,那么这样的
Matlab的CPU占用率太高
Matlab有一个已知的bug,导致即使你什么也不做,cpu的占用率还是很高。rn  参考官方网站Mathworks的文章:rnrn          Why does MATLAB cause my CPU to spike even when MATLAB is idle in MATLAB 8.0 (R2012b)?rn       原因在于Matlab的帮助系统(Help Browser)
vscode cpu 占用过高解决办法
前阵子我家里的电脑中的vscode,出现过CPU占用过高,网上有人说是和淘宝镜像冲突,但是今天公司的电脑也出现这个问题,查看了下npm镜像,发现没有装淘宝的镜像,不知道是什么原因,网上有人这样说,在 文件=>首选项 搜索 search.followSymlinks 将这个值设置成false解决问题。 ...
问题:显卡占用高,但使用率低
cuda_visible_devices 设置可见gpu,但是会将整个gpu占满,Gpu的实际使用率很低。使用tf.configproto.gpu_optional.allow_growth属性设为True时就可以文明使用gpu。数据读取满,影响计算速度...
lsass.exe占用CPU50%以上解决方法
解决lsass.exe占用CPU50%以上。解决lsass.exe占用CPU50%以上。
GPU 版tensorflow在训练CIFAR数据集时GPU 没有参与计算/出现假死机状态/CPU满负荷运转
代码:《TensorFlow实战》黄文坚著,第5.3节 TensorFlow 实现进阶的卷积网络,所用数据集为CIFAR-10nn出现问题的电脑型号:thinkpad T470; 显卡: GeForce 940mxnn问题描述:书中提供的代码之前在不同的台式机上运行都没有问题,后来在笔记本运行的时候发现CPU满负荷运转,而GPU没有参与计算。开始以为是显卡相关驱动没有安装好,在对显卡驱动进行了几番...
Ubuntu 查看CPU/GPU内存使用情况
1、Ubuntu下查看CPU内存使用情况:nntopnnn2、Ubuntu下查看GPU内存使用情况:n nvidia-smi
win7 svchost.exe占用内存和CPU很高,电脑很卡的解决方法
本来系统用来很久都不会卡,或者说原来的问题我都已经解决过了,但是有一天,用360扫描了一下,发现Windows有些更新,我就点更新了。n这不更新倒好,电脑没啥毛病,n但是n更新之后,我就发现我的浏览器莫名其妙的卡了一会,然后基本就是死机的感觉,法科,不能忍。n查看进程,发现svchost.exe这个进程怎么出来啦,我记得以前我收拾过他的。n可能就是昨天的360更新使得这个家伙死灰复燃啦。
tensorflow 内存泄漏、内存不足
tensorflow内存泄露
多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
服务器有多张显卡,一般是组里共用,分配好显卡和任务就体现公德了。除了在代码中指定使用的 GPU 编号,还可以直接设置可见 GPU 编号,使程序/用户只对部分 GPU 可见。nn操作很简单,使用环境变量 CUDA_VISIBLE_DEVICES 即可。 n具体来说,如果使用单卡运行 Python 脚本,则可输入nnnnCUDA_VISIBLE_DEVICES=1 python my_script.p...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 都人工智能培训 产品经理都学什么