这个错误提示是因为 Docker 在尝试将 /dev/kfd
设备映射到容器中时,发现该设备在宿主机上不存在。
一种可能性是你的系统不支持 AMD GPU,并且没有加载相应的内核模块。如果你确定你的系统支持 AMD GPU,请检查是否已经将 amdgpu
和 kfd
内核模块正确地加载到了宿主机上。可以使用以下命令来检查:
lsmod | grep amdgpu
lsmod | grep kfd
如果输出为空,说明对应的内核模块没有被加载。你可以使用以下命令来加载内核模块:
sudo modprobe amdgpu
sudo modprobe kfd
另外,如果你的系统上已经安装了 AMDGPU-PRO 驱动程序,则需要确保在启动容器时加入额外参数才能正确地映射设备和驱动程序:
docker run --device=/dev/kfd --device=/dev/dri --group-add=video -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY <image-name>
请注意,在使用 Docker 运行带有 GPU 加速功能的容器时,需要确保 Host 系统和 Container 中都正确配置了相关环境变量和映射设备等设置。