Atlas 500 Pro 服务器重启后npu-smi info报错的解决方案
【摘要】 最近购买了一台Atlas 500 Pro 服务器用于AI推理,之前npu-smi info可以正常显示。在多次重启服务器后,突然npu-smi info报错DrvMngGetConsoleLogLevel failed. (g_conLogLevel=3) dcmi module initialize failed. ret is -8005
1 问题描述
最近购买了一台Atlas 500 Pro 服务器用于AI推理,按照官方的操作指南进行安装,当时在Ubuntu20.04操作系统上安装好了固件和驱动程序后,npu-smi info可以正常显示。在多次重启服务器后,突然npu-smi info报错,显示如下错误信息:
DrvMngGetConsoleLogLevel failed. (g_conLogLevel=3)
dcmi module initialize failed. ret is -8005
2 解决问题
通过排查用户HwHiAiUser、环境变量、Docker容器配置以及A310卡是否在位后,依旧没有解决该问题。最后发现是多次重启后,Ubuntu操作系统自动升级了内核版本,导致驱动不兼容,从而出现了上述问题。好在之前安装操作系统时,通过 uname -r 查看过内核版本并记录了一下:
kzroot@atlas500ai:~$ uname -r
5.4.0-100-generic
此刻出现问题,首先查看一下现在的内核版本:
5.4.0-173-generic
那么就尝试配置Ubuntu启动的默认内核版本,具体过程如下:
首先查看当前可用的内核版本列表
dpkg --list | grep linux-image
设置grub启动项:
vi /etc/default/grub
修改内容如下:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
#GRUB_DEFAULT=0
GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 5.4.0-100-generic"
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX=""
最后执行更新命令
update-grub
重启
reboot
如果可以正常启动服务器,则通过uname -r 查看当前运行的内核版本,并执行npu-smi info正常显示:
3 总结
由于Ubuntu内核自动升级导致的驱动问题,在GPU上也存在,因此建议禁用Ubuntu自动内核升级。具体方法可以参考如下命令:
echo -e "APT::Periodic::Update-Package-Lists \"0\";\nAPT::Periodic::Download-Upgradeable-Packages \"0\";\n
APT::Periodic::AutocleanInterval \"0\";\nAPT::Periodic::Unattended-Upgrade \"0\";" |
sudo tee /etc/apt/apt.conf.d/10periodic
echo -e "APT::Periodic::Update-Package-Lists \"0\";\nAPT::Periodic::Unattended-Upgrade \"0\";" |
sudo tee /etc/apt/apt.conf.d/20auto-upgrades | sudo tee /etc/apt/apt.conf.d/20auto-upgrades
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)