首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Ubuntu20.04上安装ROCm失败

在Ubuntu20.04上安装ROCm失败
EN

Stack Overflow用户
提问于 2021-02-01 04:35:39
回答 2查看 9.3K关注 0票数 5

我想为Ubuntu上的深度学习建立AMD Radeon。我工作的主要图书馆是煤油和火把。我严格遵循ROCm安装准则这里,但在第3步使用命令sudo apt install rocm-dkms失败。错误消息如下所示。

代码语言:javascript
运行
复制
Setting up dkms (2.8.1-5ubuntu1) ...
Setting up hip-rocclr (4.0.20496.5685.40000-23) ...
Setting up rock-dkms (1:4.0-23) ...
Loading new amdgpu-4.0-23 DKMS files...
Building for 5.8.0-41-generic
Building for architecture x86_64
Building initial module for 5.8.0-41-generic
Error! Bad return status for module build on kernel: 5.8.0-41-generic (x86_64)
Consult /var/lib/dkms/amdgpu/4.0-23/build/make.log for more information.
dpkg: error processing package rock-dkms (--configure):
 installed rock-dkms package post-installation script subprocess returned error 
exit status 10
Setting up g++-9 (9.3.0-17ubuntu1~20.04) ...
Setting up g++ (4:9.3.0-1ubuntu2) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mo
de
Setting up build-essential (12.8ubuntu1.1) ...
dpkg: dependency problems prevent configuration of rocm-dkms:
 rocm-dkms depends on rock-dkms; however:
  Package rock-dkms is not configured yet.

dpkg: error processing package rocm-dkms (--configure):
 dependency problems - leaving unconfigured
Setting up gcc-multilib (4:9.3.0-1ubuntu2) ...
No apport report written because the error message indicates its a followup erro
r from a previous failure.
                          Setting up g++-9-multilib (9.3.0-17ubuntu1~20.04) ...
Setting up g++-multilib (4:9.3.0-1ubuntu2) ...
Processing triggers for sgml-base (1.29.1) ...
Setting up x11proto-dev (2019.2-1ubuntu1) ...
Setting up libxau-dev:amd64 (1:1.0.9-0ubuntu1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
Processing triggers for man-db (2.9.1-1) ...
Setting up libxdmcp-dev:amd64 (1:1.1.3-0ubuntu1) ...
Setting up x11proto-core-dev (2019.2-1ubuntu1) ...
Setting up libxcb1-dev:amd64 (1.14-2) ...
Setting up libx11-dev:amd64 (2:1.6.9-2ubuntu1.1) ...
Setting up libglx-dev:amd64 (1.3.2-1~ubuntu0.20.04.1) ...
Setting up libgl-dev:amd64 (1.3.2-1~ubuntu0.20.04.1) ...
Setting up mesa-common-dev:amd64 (20.2.6-0ubuntu0.20.04.1) ...
Setting up rocm-opencl-dev (3.6Beta-17-g875c1f8-rocm-rel-4.0-23) ...
Settin XT g up rocm-clang-ocl (0.5.0.64-rocm-rel-4.0-23-50fb51a) ...
Setting up rocm-utils (4.0.0.40000-23) ...
Setting up rocm-dev (4.0.0.40000-23) ...
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
Errors were encountered while processing:
 rock-dkms
 rocm-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)

我的内核版本是5.8.0-41-generic。我的VGA卡是千兆字节Radeon RX6900 XT。我的CPU是AMD Ryzen 93900 XT。我尝试了前几篇文章中提出的几种解决方案,但这并没有解决我的问题。请你给我解决这个问题的建议。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-03 18:52:35

我也有同样的问题。我发现修复它的唯一方法是回滚到5.6.0-1042-oem内核。AMD驱动程序似乎不支持任何内核通过这一个。

编辑:这也是一种方法,以使amdgpupro驱动程序安装没有任何问题。

警告:我是在事后写这些的,我可能在这过程中错过了一步或什么。请非常小心,特别是尝试删除内核和在您的引导目录工作时。如果您对破坏系统的想法感到不舒服,可以始终设置grub的默认选择,这比删除initramfs安全得多。

这是我如何让RocM工作的

代码语言:javascript
运行
复制
sudo apt install linux-image-5.6.0-1042-oem linux-headers-5.6.0-1042-oem && reboot

通过访问grub中的Ubuntu高级选项,确保启动到5.6内核。

代码语言:javascript
运行
复制
sudo apt remove linux-image-5.8.0-41-generic linux-headers-5.8.0-41-generic && sudo apt autoremove && reboot

同样,您将不得不通过高级选项重新启动到5.6。(在BIOS完成加载后按住shift键,以获得菜单。)回到内核后,最好将标题和图像设置为“阻止”,因为内核更新很可能会破坏RocM。

代码语言:javascript
运行
复制
sudo apt-mark hold linux-image-generic linux-headers-generic

现在,我们将尝试释放5.8内核。从冲洗临时文件开始。

代码语言:javascript
运行
复制
sudo rm -rv ${TMPDIR:-/var/tmp}/mkinitramfs-*

现在列出所有已安装的内核。

代码语言:javascript
运行
复制
dpkg -l | tail -n +6 | grep -E 'linux-image-[0-9]+'

并尝试删除5.8内核。对我们安装的5.6以上的任何内核都这样做。

代码语言:javascript
运行
复制
sudo update-initramfs -d -k 5.8.0-41-generic

现在initramfs、Systemmap和config仍然存在于引导dir中,因此我们需要清除它们,以使grub再次正常工作。

代码语言:javascript
运行
复制
cd /boot/
sudo rm vmlinuz-5.8.0-41-generic System.map-5.8.0-41-generic config-5.8.0-41-generic

现在您应该已经准备好更新grub了。

代码语言:javascript
运行
复制
sudo update-grub && reboot

现在,当您重新加载时,您应该能够安装RocM

代码语言:javascript
运行
复制
sudo apt install rocm-dkms
票数 8
EN

Stack Overflow用户

发布于 2021-04-19 07:16:00

根据本链接的官方说明,ROCm平台是为支持Ubuntu20.04.1 (5.4和5.6-oem)和18.04.5 (内核5.4)而设计的。

因此内核版本5.8不支持。然而,降级是一种选择,但您可以简单地引导到较旧版本的内核,而不是仓促进行。

尝试以下步骤:

  1. 重启你的电脑,
  2. 等待grub菜单打开(如何打开grub菜单:链接)。
  3. 选择advanced options for ubuntu
  4. 从显示的列表中选择一个备用内核。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65987212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档