深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

作者: 胡智豪 2017-07-17 11:13:57

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

新买回来的不带水冷公版GPU,在满负载运行的时候,温度从室温马上飙升到85度,而且模型训练不是几分钟完事,很有可能要长期保持在高温状态下运行,让如此昂贵的GPU一直发烧真是让人太心疼!

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

首先得到知乎上一位朋友的文章启发:从零开始组装深度学习平台(GPU散热)。具体地址:

https://t.cn/RK9wyBK

这篇文章写的是在ubuntu X server环境下,通过修改nvidia-settings来修改GPU风扇速度,因为默认的nvidia-settings设置是,即使GPU在计算的时候温度已经达到85度,风扇速度***不会超过70%,这样就无法很好地为GPU进行散热,因此需要手动修改GPU风扇速度。

注,以下设置都是针对linux系统的GPU设置,windows的朋友请搜索相关文章。

  一、如果你有显示器(X server)

可以完全按照上面提到的文章《从零开始组装深度学习平台》操作,这里贴出关键步骤为:

1. 修改/etc/X11/xorg.cong文件

  1. sudo nano /etc/X11/xorg.conf 

2. 在Section "Device"里面加入 Option "Coolbits" "4"

  1. Section "Device" 
  2.      Identifier      "Device0" 
  3.      Driver          "nvidia" 
  4.      VendorName      "NVIDIA" 
  5.      Option          "Coolbits" "4" 
  6. EndSection 

3. 重启电脑sudo reboot

4. 输入:

  1. nvidia-settings -a "[gpu:0]/GPUFanControlState=1" -a "[fan:0]/GPUTargetFanSpeed=100" 

这里GPUTargetFanSpeed=100就是风扇的速度, 100就是风扇运行在100%的速度, 也可以改成其它速度. 注意在新的NVIDIA驱动, GPUCurrentFanSpeed 被改成了 GPUTargetFanSpeed. 另外GPUFanControlState=1表示让用户可以手动调节GPU风扇速度。

感谢原文知乎作者:张三

  二、如果你没有显示器

一般在ubuntu上搭建完深度学习环境后,许多朋友习惯把ubuntu的X桌面服务禁用掉,然后通过另一台windows系统的电脑通过ssh来连接GPU机器使用。这个时候X server已经被禁用掉,开机也自动启动命令行模式,上面***种做法就不适用于这种情况了。原因是,nvidia-settings只能在X桌面环境下运行,若你想强行使用这个设置就会报错:

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

因此正常情况下,是不可能通过修改这个设置来改变风扇速度的。

但有没有其它方法修改呢?有!你需要骗过系统,让它你有显示器,这就是常说的headless模式。

主要的解决方法是参考了链接里这篇文章(fan speed without X : powermizer drops card to p8):

https://t.cn/RK9ASS5

这篇文章提供了修改风扇速度的脚本,在ubuntu下运行脚本即可实时调节风扇速度,从而为GPU降温。

这里提供详细步骤:

1. 克隆这个github仓库到本地目录/opt:

https://github.com/boris-dimitrov/set_gpu_fans_public

cd /opt

git clone https://github.com/boris-dimitrov/set_gpu_fans_public

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

在这个仓库包括上图几个文件,主要起作用的是cool_gpu这个文件,我们把文件夹克隆下来之后,运行cool_gpu就可以调节风扇速度了。

2. 修改文件夹名字为set-gpu-fans,因为作者疏忽,在cool_gpu代码中此文件夹被命名为“set-gpu-fans”,然而git clone下来的文件夹名字是“set_gpu_fans_public”。

sudo mv set_gpu_fans_public set-gpu-fans

3. 创建一个符号链接,让系统知道这个代码在哪里:

ln -sf ~/set-gpu-fans /opt/set-gpu-fans

4.定位到set-gpu-fans文件夹,输入以下命令:

  1. cd /opt/set-gpu-fans 
  2. sudo tcsh 
  3. ./cool_gpu >& controller.log & 
  4. tail -f controller.log 

这个命令是运行cool_gpu降温代码,启动后会看到这些实时变化的提示:

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

在开始计算测试前,我们看看目前GPU的温度:

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

这里用的是2卡进行计算测试,我们可以看到,2卡的Perf(性能)一项已经被调整为“P2”(其它卡仍为P8),2卡的温度为35度,而且三个风扇的速度均为55%。“P2”指的是nvidia的显卡power state,从P0到P12,***性能状态为P0,运行计算是为P2,***功耗(***性能)为P12。

启动模型训练,我们可以看到程序正在不断地自动调节温度:

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

当运行训练模型一段时间后,最终的温度状态如下图:

深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

风扇被全部调节到80%的速度,温度稳定在65度!对比文章开头的数据,显卡温度从84度降到65度,整整下降了20度!

  三、一点要注意的

在上面第二部分的文章出来之前,网上还流传着另一篇文章,那篇可以说是最原始的版本,上面第二部分的代码正是基于该篇原始版本文章改进的,链接地址在这里(Set fan speed without an X server):

https://t.cn/RK9yQmf

但这篇文章的原始代码存在一个严重问题:虽然能够强制改变风扇速度,但GPU会被降频工作,power state会被强制降为P8,导致运算性能严重下降!

可能是那篇文章发表时间比较早,不大适用现在***的显卡和驱动,因此才有了上面第二部分的改进版本,所以大家不要使用原始版本的代码,否则GPU会被限制性能。

转自雷锋网。本文作者胡智豪,原载于作者个人博客。

CPU 降温 深度学习
上一篇:一文读懂矩阵的秩和行列式的意义 下一篇:人工智能进场 AR/VR何去何从?
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

有了这支矢量神经风格画笔,无需GAN也可生成精美绘画

一种新的神经风格画笔能够生成矢量形式的绘画作品,在统一框架下支持油画、马克笔、水彩画等多种笔触,并可进一步风格化。

机器之心 ·  1天前
人工智能在越来越多地渗透到各行各业

当前,人工智能技术已成为全球科技创新的一大热门技术。其价值就在于与各行各业的融合、赋能,推动产业优化升级。

Yu ·  2天前
新一代人工智能在深度学习中解决问题

人工智能的发展在最近十年突飞猛进,成绩斐然,我们不再满足于算力、算法、数据起到的最大作用,要探索新一代人工智能。

易新速 ·  3天前
深度学习算法

深度学习算法在机器视觉中就如一个巧妙的接收转换器般的存在,它灵活、敏捷、“深度”与广度兼具,强悍的计算与预测能力可以称为其魅力之处。深度计算——可以集数亿个神经网络的自拟,对于数据、语音、图像等多种形式的资源进行分析、解释。

三姆森科技 ·  2021-04-16 11:31:24
中美欧人工智能发展现状比较分析

从投资、人才、研究、硬件、应用、数据多个维度,系统对比中、美、欧人工智能发展现状,最终得出结论称,美国当前依然保持着世界人工智能发展总体领先地位,中国在一些重要领域与美国的差距缩小,欧盟在三者中相对落后。

王璐菲 ·  2021-04-16 11:05:49
解锁人工智能、机器学习和深度学习

深度学习是机器学习的子集,而机器学习又是人工智能的子集,但是这些名称的起源来自一个有趣的历史。此外,还有一些引人入胜的技术特征,可将深度学习与其他类型的机器学习区分开来……对于技能水平较高的ML、DL或AI的任何人来说,这都是必不可少的工作知识。

佚名 ·  2021-04-16 09:53:45
谈谈基于深度学习的目标检测网络为什么会误检,以及如何优化目标检测的误检问题

在训练人脸检测网络时,一般都会做数据增强,为图像模拟不同姿态、不同光照等复杂情况,这就有可能产生过亮的人脸图像,“过亮”的人脸看起来就像发光的灯泡一样。

刘冲 ·  2021-04-15 09:50:41
报告指出:中国人工智能专利申请数量居全球首位

中国在自然语言处理、芯片技术、机器学习等10多个人工智能子领域的科研产出水平居于世界前列。而在人机交互、知识工程、机器人、计算机图形、计算理论领域,中国还需努力追赶。

Yu ·  2021-04-14 05:55:38
Copyright©2005-2021 51CTO.COM 版权所有 未经许可 请勿转载