深度学习PyTorch,TensorFlow中GPU利用率较低,使用率周期性变化的问题

深度学习中GPU和显存分析 文章目录GPU运行情况查询深度学习中GPU和显存分析0 预备知识1.显存分析1.1 存储指标1.2 神经网络显存占用1.2.1 参数的显存占用1.2.2 梯度与动量的显存占用 GPU运行情况查询 在linux中,命令行输入nvidia-smi指令即可看到当前nvidia显卡的使用情况 表头释义: • Fan:显示风扇转速,数值在0到100%之间,是计算机的期望转速,如果计算机不是通过风扇冷却或者... 阅读详情

在用tensorflow训练神经网络时,发现训练迭代的速度时而快时而慢,监督的GPU使用率也是周期性变化,通过了解,发现原因是:

GPU在等待CPU读取,预处理,并传输数据过来,因此要提高GPU的使用率,降低GPU的等待时间,需要加快CPU的处理速度.

在PYTORCH中的解决方案是用torch.utils.data.DataLoader,用num_workers设置线程数:

           torch.utils.data.DataLoader(image_datasets[x],
                                   batch_size=batch_size,
                                    shuffle=True,
                                    num_workers=8,
                                    pin_memory=True)
 

在tensorflow中的解决方案是用tf.data.Dataset.map(num_parallel_calls=8)中的num_parallel_calls设置读取数据的线程数:

             用 tf.data读取数据,  tf.data.Dataset中有一个map函数,它有个num_parallel_calls参数,可以控制CPU的线程,加快数据的读取速度,一般将线程设置为8效果最好.

 

本文主要参考以下两篇文章,建议大家去看更多细节:

             https://blog.youkuaiyun.com/qq_32998593/article/details/92849585

              https://zhuanlan.zhihu.com/p/53345706

【信息科学与工程学】计算机科学与自动化——第十六篇 GPU 05 工艺(3) 序号工艺工序名称工艺步骤核心参数其他参数关键部件及原材料控制指标加工设备类型加工工艺/技巧1衬底准备​1.1 硅晶圆清洗 1.2 热氧化生长薄SiO₂层(1-5nm) 1.3 衬底温度稳定温度: 600-800°C 厚度: 1-5nm 表面粗糙度: <0.2nm晶向: (100) 晶圆尺寸: 300mm 掺杂浓度: 1-10 Ω·cm p型Si晶圆、O₂气体、清洗液(SC1/SC2)氧化层厚度均匀性(±0.1nm) 界面态密度(Dit)<1e10 cm⁻²eV⁻¹清 阅读详情

相关推荐

【信息科学与工程学】【物理/化学和工程技术】第七十五篇 电气工程 系列三 电机学01

至此,总条目达到163 条磁路与电磁场数值方法(131–134)特殊运行状态(135–139)实验技术与标准设计细节(144–149)动态过程(150–154)至此,总条目达到213 条,全面覆盖《电机学》教材及其在电动汽车、工业机器人、家用电器、轨道交通、航空航天、船舶推进、新能源(飞轮储能、波浪发电)​ 等领域的应用,以及先进控制算法(MTPA、弱磁、MPC、EKF、三环PID)​ 和仿真技术(联合仿真、遗传算法优化、HIL)。每条均包含逐步推理的数学方程式和详细推导,可直接用于教学、科研和工程参考。

weixin_49199313的博客 563

深度学习训练时GPU利用率忽高忽低如何解决?

在windowas上进行深度学习的时候,可能会出现GPU负载忽高忽低的现象,(突然98,突然50...) 这种情况很有可能是 读数据或者数据预处理的时间过长,读数据部分可以尝试把全部或者部分数据放在内存,也可以放固态上。 数据预处理部分有些变换是否可以固定,假如是图像数据,有些resize或者padding的操作是否可以离线处理好。 当然,适当调整dataloader读数据的线程数可能也会有帮助。 即两种情况: 你应该将你的程序和数据放在固态上而不是机械上 你应该设置你的num_wor..

Drug discovery 2万+

【信息科学与工程学】【运营科学】第二篇 C4信息与通信网络运营 (C4) ——数据中心网络运营04

典型值:λ1​∈[−0.02,−0.01], λ2​∈[−0.01,0], η1​,η3​∈[0.1,0.3], η2​,η4​∈[0.05,0.15]参数:δ1​∈[−0.8,−0.3], δ2​∈[−0.5,−0.2], δ3​∈[−0.4,−0.1], δ4​∈[−0.6,−0.2]参数:φ1​∈[0.1,0.3], φ2​∈[−0.2,−0.05], φ3​∈[−0.1,0.1], φ4​∈[−0.3,−0.1]参数:α∈[0.3,0.6], β∈[0.2,0.4], γ∈[0.01,0.03]

weixin_49199313的博客 1207

pytorch训练,gpu利用率不稳定

问题描述: 单主机四gpu利用torch.nn.DataParallel进行多gpu的训练;gpu的内存占有率没问题,但使用率很低,很长一段时间在百分之零。 问题原因: 读取每个batch size的图像时,cpu读取时间较长。(batch_size = 1024, 设置DataLoader线程4、8、16、32的改善都不大,且pin_memory=true),开始的dataset为下面方式,显然每次读取时io的耗时比较长。于是,将图像全部读出(硬件支持…),然后再进行每次的变量赋值。 class myDa

stupid_miao的博客 6601

【信息科学与工程学】【物理/化学科学和工程技术】知识体系04 热学 系列二04

严格交替安排“计算传热”与“声子热”条目,深入涵盖非傅里叶导热、量子热输运、热超材料、机器学习、多物理场耦合、声子-光子-磁子相互作用、热辐射调控、热电、相变蓄热、建筑能耗、焊接模拟、MEMS执行器、磁光热辐射等前沿与深化主题,确保两个领域的覆盖面均衡。编号类型热学领域子领域核心数学方程式/算法模型逐步推理思考的数学方程式及数字/数值参数列表时序数学方程式和时序周期变化和稳态/非稳态关联知识加工工具/机床/装备及厂商及加工工艺及各类时序流程和各类注意事项801计算传热非傅里叶热传导的数值模拟双曲热传导方程双

weixin_49199313的博客 424

CAD的.dwg文件导入 ArcGIS:高程分析、坡度分析、坡向分析

CAD的.dwg文件导入 ArcGIS,再进行高程分析、坡度分析、坡向分析。

My_Echo_yM的博客 7236

深度学习PyTorch,TensorFlow中GPU利用率较低,CPU利用率很低,且模型训练速度很慢的问题总结与分析

在深度学习模型训练过程中,在服务器端或者本地pc端,输入nvidia-smi来观察显卡的GPU内存占用率(Memory-Usage),显卡的GPU利用率(GPU-util),然后采用top来查看CPU的线程数(PID数)和利用率(%CPU)。往往会发现很多问题,比如,GPU内存占用率低,显卡利用率低,CPU百分比低等等。接下来仔细分析这些问题和处理办法。 1. GPU内存占用率问题 这往往是由于模型的大小以及batch size的大小,来影响这个指标。当你发下你的GPU占用率很小的时候...

anshiquanshu的专栏 1万+

echarts的坐标轴处理算法

参考原文:https://www.cnblogs.com/vicky-li/p/11653415.html。2、可用于双轴的情况,指定splitNumber,保证左右两边的线没有交叉显示的情况。1、设置echarts显示的最大最小值,让数据显示比较有起伏。处理echarts的一些问题。

HYeeee的博客 801

Tensorflow模型GPU使用率低的问题

Tensorflow模型GPU使用率低的问题和分析

YEnh的唐伯虎的博客 4369

Kinect V1结构光激光散斑原理及样式

   对 intel realsense F200 和 Kinect V1的coding pattern原理进行调研,知二者都使用light coding的方式,该方法与传统的coded structure light不同:传统编码结构光(空间编码,时间编码)最终使用的是三角测量的原理计算深度信息;light coding通过投射具有高度伪随机性的激光散斑,会随着不同距离变换不同

松间明月 1万+

NVIDIA Jetson Orin系列 - 使用SDK Manager安装JetPack全流程解析

本文详细解析了使用NVIDIA官方SDK Manager为Jetson Orin系列开发板安装JetPack系统的完整流程。从环境准备、设备进入恢复模式,到SDK Manager图形化界面的分步操作指南,提供了新手友好的全流程解析,并分享了安装后的验证方法及常见问题解决方案,帮助开发者高效搭建稳定的边缘AI开发环境。

nn3456的博客 406

python运行效率gpu_pytorch 限制GPU使用效率详解(计算效率)

问题用过 tensorflow 的人都知道, tf 可以限制程序在 GPU 中的使用效率,但 pytorch 中没有这个操作。思路于是我想到了一个代替方法,玩过单片机点灯的同学都知道,灯的亮度是靠占空比实现的,这实际上也是计算机的运行原理。 那我们是不是也可以通过增加 GPU 不工作的时间,进而降低 GPU 的使用效率 ?主要代码这样子 GPU 的使用效率就可以减小了。rest_time 的越大 ...

weixin_39987926的博客 263

Windows下Fortran调用CGNS库的完整踩坑实录:从HDF5、CMake到VS2019+IVF2020的保姆级配置

本文详细记录了在Windows环境下使用Fortran调用CGNS库的完整配置过程,涵盖HDF5安装、CMake配置、VS2019与IVF2020集成等关键步骤。通过实战经验分享,帮助开发者解决常见编译错误和链接问题,实现高效的Fortran与CGNS库集成。

weixin_28707739的博客 349

python效率计算-pytorch 限制GPU使用效率详解(计算效率)

问题用过 tensorflow 的人都知道, tf 可以限制程序在 GPU 中的使用效率,但 pytorch 中没有这个操作。思路于是我想到了一个代替方法,玩过单片机点灯的同学都知道,灯的亮度是靠占空比实现的,这实际上也是计算机的运行原理。 那我们是不是也可以通过增加 GPU 不工作的时间,进而降低 GPU 的使用效率 ?主要代码import time...rest_time = 0.15...f...

weixin_40001309的博客 898

从NHANES到发表:如何用survey包完成符合CDC要求的统计分析(含完整R代码)

本文详细介绍了如何利用R语言的survey包,对美国国家健康与营养调查数据进行符合CDC要求的统计分析。文章重点解析了NHANES数据的复杂抽样设计、权重变量的正确选择与调整,并提供了从数据获取、清洗、构建调查设计对象到执行加权回归及生成发表级表格的完整R代码实战指南,帮助研究者避免常见错误,确保分析结果的准确性与可发表性。

weixin_29054245的博客 521

Cadence OrCAD Capture 原理图中创建差分对约束的两种常用方法

本文介绍在原理图设计阶段,添加差分对的方法。

fydar的博客 3931

上采样与下采样:从信号处理到深度学习的核心操作解析

采样是数字信号处理与深度学习中的基础操作,其核心原理基于奈奎斯特-香农采样定理。上采样通过插值算法增加数据分辨率,下采样则通过滤波减少数据量,两者共同确保信号在变换过程中避免混叠失真。在技术价值上,采样操作直接影响数据质量与模型性能,是特征提取与信息保留的关键。应用场景广泛覆盖图像处理、音频分析及时间序列数据对齐。在深度学习领域,U-Net等编码器-解码器架构巧妙结合上采样与下采样,通过跳跃连接实现特征融合,成为图像分割等任务的核心。本文聚焦unet上采样、下采样等热词,深入探讨其实现策略与工程实践中的常见

weixin_34314962的博客 399

华为OD机考双机位C卷 - 池化资源共享 (Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 池化资源共享 (OD上机考试双机位C卷)。提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。

算法大师! 1071

Tensorflow的GPU使用率低的原因

因为任务管理器中没有直接显示cuda的使用率,查看cuda使用率的方法如下↓ 1.打开任务管理器点击对应GPU: 2.点击任意一个小三角选择cuda: 3.结果如下: cuda的使用率已经86%了,他很充实只是看起来轻松。 ...

什么都干的派森 8760

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

idea使用方式大全

转自

qq_37603187的博客 345

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

求解!!用gpu来做pytorch神经网络任务时占用率忽高忽低

之前训练一个step用时也就两秒多,现在突然要一分多钟了,最近只是删除了一些c盘的缓存,没动过任何东西,求问各位大神是哪里出现了问题!求解用gpu来做pytorch神经网络任务时占用率忽高忽低,原拉跑都没有过突然成这样了怎么办。

weixin_62235567的博客 732

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

TensorFlow如何提高GPU训练效率和利用率

转自:原文链接 前言 首先,如果你现在已经很熟悉tf.data+estimator了,可以把文章x掉了╮( ̄▽ ̄””)╭ 但是!如果现在还是在进行session.run(..)的话!尤其是苦恼于GPU显存都塞满了利用率却上不去的童鞋,这篇文章或许可以给你打开新世界的大门噢( ̄∇ ̄) 如果发现经过一系列改良后训练效率大大提高了,记得回来给小夕发小红包( ̄∇ ̄) 不过,这并不是一篇怒贴一堆代...

ts719796895的博客 1891

GPU使用问题

GPU使用

Mark_Australia的博客 1445
上一篇: Loaded runtime CuDNN library: 7103 (compatibility version 7100) but source was compiled with 7005 ..
下一篇: Tensorflow 获取model中的变量列表,用于模型加载等
wzg2016
博客等级 码龄10年 539粉丝 493原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值