已知问题#
本章介绍了软件发布时与 DGX OS 软件或 DGX 硬件相关的问题。
已知软件问题
以下是已知的软件问题。
拉取容器 CUDA:11.7.0-base-ubi8 失败
DCGM 服务标记为已弃用
NVSM 可能会发出“md1 已损坏”警报
nvsm show health 报告 /proc/driver 文件夹为空
NVSM 报告非英语系统上的逻辑 CPU 核心数为“未知”
KVM 虚拟机中 InfiniBand 带宽下降
问题:拉取容器 CUDA:11.7.0-base-ubi8 失败。根本原因和解决方案未知
说明
可能存在过时的 Docker 数据,或者系统上可能存在较旧的镜像或容器,需要将其删除。
解决方法
sudo rpm -e nv-docker-gpus
sudo rpm -e nv-docker-options docker
sudo yum group remove -y 'NVIDIA Container Runtime'
sudo yum install -y docker
sudo yum install nv-docker-gpus
sudo yum group install -y 'NVIDIA Container Runtime'
sudo systemctl restart docker
sudo systemctl restart nv-docker-gpus
sudo docker rmi \`sudo docker images -q\` # may get an error if there are no images
sudo docker rm \`sudo docker ps -aq\` # may get an error if there are no containers
sudo docker run --security-opt label=type:nvidia_container_t --rm nvcr.io/nvidia/cuda:11.0-base nvidia-smi
问题:DCGM 服务标记为已弃用
当查询 dcgm.service 的状态时,它被报告为已弃用。
$ sudo systemctl status dcgm.service
dcgm.service - 已弃用。请使用 nvidia-dcgm.service
说明
可以忽略此消息。
dcgm.service 确实已弃用,但仍可正常使用。DCGM 服务的名称正在从 dcgm.service 迁移到 nvidia-dcgm.service。在过渡期间,DCGM 2.2.8 中同时包含两者。
更高版本的 DGX OS 4 将默认启用 nvidia-dcgm.service。您可以手动启用 nvidia-dcgm.service(即使功能上没有区别),方法如下
$ sudo systemctl stop dcgm.service
$ sudo systemctl disable dcgm.service
$ sudo systemctl start nvidia-dcgm.service
$ sudo systemctl enable nvidia-dcgm.service
问题:NVSM 可能会发出“md1 已损坏”警报
在系统上,当一个 OS 驱动器用于 EFI 启动分区,另一个用于根文件系统(每个都配置为 RAID 1)时,NVSM 会发出“md1 已损坏”警报。
说明
OS RAID 1 驱动器以非标准配置运行,导致出现错误的警报消息。如果您更改默认配置,则必须告知 NVSM,以便该实用程序不会将配置标记为错误,并且 NVSM 可以继续监视驱动器的运行状况。
要配置 NVSM 以支持自定义驱动器分区,请执行以下操作。
停止 NVSM 服务。
systemctl stop nvsm
编辑 /etc/nvsm/nvsm.config 并将 “use_standard_config_storage” 参数设置为 false。
“use_standard_config_storage”:false
删除 NVSM 数据库。
sudo rm /var/lib/nvsm/sqlite/nvsm.db
重启 NVSM。
systemctl restart nvsm
问题:nvsm show health 报告 /proc/driver 文件夹为空
当发出 nvsm show health 命令时,nvsmhealth_log.txt 日志文件报告 /proc/driver/ 文件夹为空。
来自 DGX-1 的示例
2020-09-01 20:03:05,204 INFO: Found empty path glob "/proc/driver/nvidia/*/gpus/*/information"
2020-09-01 20:03:06,206 INFO: Found empty path glob "/proc/driver/nvidia/*/gpus/*/registry"
2020-09-01 20:03:09,742 INFO: Found empty path glob "/proc/driver/nvidia/*/params"
2020-09-01 20:03:10,743 INFO: Found empty path glob "/proc/driver/nvidia/*/registry"
2020-09-01 20:03:11,745 INFO: Found empty path glob "/proc/driver/nvidia/*/version"
2020-09-01 20:03:12,747 INFO: Found empty path glob "/proc/driver/nvidia/*/warnings/*"
说明
这是一个错误的消息,因为文件夹内容实际上是在软件安装期间加载的。可以忽略此消息。这将在未来的 NVSM 版本中解决。
问题:NVSM 报告非英语系统上的逻辑 CPU 核心数为“未知”
在设置为非英语区域设置的系统上,nvsm show health
命令将逻辑 CPU 核心数列表显示为未知。
逻辑 CPU 核心数 [无]………………………… 未知
解决方案
此问题将在更高版本的 DGX OS 软件中解决。
问题:KVM 虚拟机中 InfiniBand 带宽下降
在多 GPU 虚拟机上运行时,InfiniBand 带宽低于在裸机上运行时。
说明
目前,在虚拟机中使用 GPUDirect 的性能将低于在裸机系统上使用时的性能。
已知 DGX-2 系统问题
以下是 DGX-2 服务器特有的已知问题。
DGX KVM:nvidia-vm health-check 可能失败
NVSM 未检测到降级的 GPU PCIe 链路
问题:DGX KVM:nvidia-vm health-check 可能失败
当运行 nvidia-vm health-check 以检查 DGX KVM 虚拟机使用的特定 GPU 的运行状况时,该命令可能会失败。
示例:
sudo nvidia-vm health-check --gpu-count 1 --gpu-index 0 --fulltest run
…
ERROR: Unexpected response from blacklist "connection"
ERROR: Unexpected response from blacklist "to"
ERROR: Unexpected response from blacklist "the"
ERROR: Unexpected response from blacklist "host"
ERROR: Unexpected response from blacklist "engine"
ERROR: Unexpected response from blacklist "is"
ERROR: Unexpected response from blacklist "not"
ERROR: Unexpected response from blacklist "valid"
ERROR: Unexpected response from blacklist "any"
ERROR: Unexpected response from blacklist "longer""
ERROR: No healthy/unhealthy data returned from blacklist command
说明和解决方案
发生这种情况的原因是运行状况检查虚拟机是从基于 DGX OS ISO 的镜像创建的,该镜像使用 R418 驱动程序包,但主机已更新到 R450 驱动程序包。这两个包使用不同的 DCGM 版本,它们之间无法通信,从而导致错误。
问题:NVSM 未检测到降级的 GPU PCIe 链路
如果 GPU PCIe 链路降级到 Gen1,NVSM 仍会将 GPU 运行状况状态报告为正常。
说明和解决方案
NVSM 软件目前不检查此情况。该检查将在未来的软件版本中添加。
已知 DGX-1 系统问题
以下是 DGX-1 服务器特有的已知问题。
运行 DCGM 时出现 nvidia-nvswitch 版本不匹配消息
强制重启使操作系统挂起
问题:运行 DCGM 时出现 nvidia-nvswitch 版本不匹配消息
当启动 DCGM 服务时,将出现类似于以下内容的版本不匹配错误消息
78075.772392 nvidia-nvswitch: 版本不匹配,内核版本 450.80.02 用户版本 450.51.06
说明
当 GPU 驱动程序版本高于 450.51.06 时,会发生这种情况。版本检查发生在所有 DGX 系统上,但仅适用于 NVSwitch 系统,因此可以在非 NVSwitch 系统(如 DGX Station 或 DGX-1)上忽略此消息。
问题:强制重启使操作系统挂起
当发出 reboot -f
(强制重启)时,控制台上会出现 I/O 错误消息,然后系统挂起。
当发出 reboot
时,系统正常重启。
解决方案
此问题将在更高版本的 DGX OS 服务器中解决。
以下是与影响 DGX 服务器的 Ubuntu OS 或 Linux 内核相关的已知问题。
使用 mpirun 时系统可能会变慢
问题:使用 ``mpirun`` 时系统可能会变慢
运行消息传递接口 (MPI) 工作负载的客户可能会遇到操作系统响应速度非常慢的情况。发生这种情况时,内核日志中会出现类似于以下内容的日志消息
kernel BUG at /build/linux-fQ94TU/linux-4.4.0/fs/ext4/inode.c:1899!
说明
由于 Linux 内核的当前设计,当在持久性存储上的文件上使用 get_user_pages
时,可能会触发此情况。例如,当在存储在 ext4 文件系统中的文件路径上使用 cudaHostRegister
时,可能会发生这种情况。DGX 系统在持久性 ext4 文件系统上实现 /tmp
。
解决方法
注意
如果您在之前的 DGX OS 软件版本上执行过此解决方法,则在更新到最新的 DGX OS 版本后无需再次执行。
为了避免使用持久性存储,可以将 MPI 配置为在 /dev/shm
(这是一个临时文件系统)中使用共享内存。
如果您使用的是 Open MPI,则可以通过配置模块化组件体系结构 (MCA) 参数来解决此问题,以便 mpirun
在内存中使用临时文件系统。
有关如何完成此操作的详细信息,请参阅知识库文章 使用 mpirun 时 DGX 系统速度变慢 (需要登录到 NVIDIA 企业支持 门户)。