amdgpu 安装

amdgpu 安装

AMDROCm 5.2.1 安装说明声明 ROCm 仅与 Ubuntu 20.04 兼容

我还可以在 Ubuntu 22.04 上安装和使用它吗?

答案1

是的,我相信你可以。通过执行以下操作,我至少成功地在基于 Ubuntu 的 Pop!_OS 22.04 上安装了 ROCm 5.1.1。我现在能够在我的 GPU(AMD RX 6800 XT)上运行 PyTorch 计算。

我本质上关注了此评论,并带有一些额外内容。另请参阅该评论以了解某些步骤的原因。

下面有些地方你必须替换5.1.1成你想要的版本。

amdgpu 安装

我们将使用终端。因此打开一个。创建一个目录来工作:

mkdir ~/ROCm && cd ~/ROCm

更新,然后下载.deb文件amdgpu-install并安装(来自 AMD 的链接):

sudo apt update
wget https://repo.radeon.com/amdgpu-install/22.20.1/ubuntu/focal/amdgpu-install_22.20.50201-1_all.deb
sudo apt-get install ./amdgpu-install_22.20.50201-1_all.deb

我们现在必须编辑amdgpu-install

sudo gedit /usr/bin/amdgpu-install 
  1. Pop!_OS 没有被列为受支持amdgpu-install,因此我们添加它:搜索ubuntu,并添加|pop到列表中(|读作“或”)。

  2. 在一行中搜索linux-modules-extra并替换整个函数,debian_build_package_list()

     function debian_build_package_list() { echo 'empty function'; }
    
  3. 保存并退出

Python 3.8

下一步中的软件包要求我们还安装旧版 Python 3.8。因此:

sudo add-apt-repository --yes ppa:deadsnakes/ppa
sudo apt-get update
sudo apt install --yes python3.8

ROCm 存储库和包编辑

接下来,我们添加所需的 ROCm 存储库。该链接与要安装的 ROCm 版本相关,因此请在此处查找基本 URL

echo 'deb [arch=amd64] <Release-1 specific rocm baseurl> ubuntu main' | sudo tee /etc/apt/sources.list.d/rocm.list
sudo apt update

我使用的是 ROCm 5.1.1,所以我专门使用了

echo 'deb [arch=amd64] https://repo.radeon.com/rocm/apt/5.1.1 ubuntu main' | sudo tee /etc/apt/sources.list.d/rocm.list

下载.debROCm 包的文件:

apt download rocm-llvm5.1.1

编辑套餐 1/2

我们需要在安装之前编辑此包。因此,我们解压、解压并编辑(<tab>我的意思是Tab按自动完成):

 ar x rocm-llvm<tab>
 tar xf control.tar.xz
 gedit control

在中control,编辑Depends行以

Depends: python3, libc6, libstdc++6|libstdc++8, libstdc++-5-dev|libstdc++-7-dev|libstdc++-10-dev, libgcc-5-dev|libgcc-7-dev|libgcc-10-dev, rocm-core5.1.1

即在适当的位置添加|libstdc++-10-dev和。|libgcc-10-dev

然后重新打包:

tar c postinst prerm control | xz -c > control.tar.xz
ar rcs rocm-llvm5.1.1_14.0.0.22114.50101-48_amd64.deb debian-binary control.tar.xz data.tar.xz

太棒了!现在,我们安装刚刚添加的可能的依赖项,然后rocm-core5.1.1

sudo apt install libstdc++-10-dev libgcc-10-dev rocm-core5.1.1

现在下载的软件包已经为我安装好了

sudo dpkg -i rocm-llvm<tab>

极好的。

编辑套餐 2/2

现在我们下载、进行相同的编辑并重新打包另一个包openmp-extras5.1.1

mkdir openmp && cd openmp
apt download openmp-extras5.1.1
ar x openmp<tab>
tar xf control.tar.xz
gedit control

编辑Depends行,像以前一样添加|libstdc++-10-dev|libgcc-10-dev。保存,关闭,重新打包,安装依赖项,然后使用以下命令打包:

tar c control | xz -c > control.tar.xz
ar rcs openmp-extras5.1.1_13.51.0.50101-48_amd64.deb debian-binary control.tar.xz data.tar.xz
sudo apt install rocm-device-libs5.1.1
sudo dpkg -i openmp<tab>

我希望一切顺利。

安装 ROCm

根据您所需的用例安装 ROCm。我的是 ROCm 和 HIP。请参阅amdgpu-install --help选项。

sudo amdgpu-install --rocmrelease=5.1.1 --usecase=rocm,hip --no-dkms

凉爽的。

现在进行最后一步设置:将您的用户添加到rendervideo组:

sudo usermod -a -G render $LOGNAME
sudo usermod -a -G video $LOGNAME

然后重新启动。

重新启动后,检查 ROCm 是否已加载

rocminfo

好嘞!我希望,还有清洁的时间:

rm -rf ~/ROCm

PyTorch 后记

笔记:确保你安装的 ROCm 版本受 Pytorch 支持。在撰写本文时,Stable 支持 ROCm 5.1.1,Nightly 支持 5.2。检查PyTorch 本地启动页面

我需要 PyTorch 的 ROCm,安装如下

pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/rocm5.1.1

然后通过运行验证我可以使用我的 GPU 进行计算

python3
import torch
torch.cuda.is_available()
torch.cuda.get_device_name(torch.cuda.current_device())

答案2

更新:从 ROCm 5.3.0 开始,已添加对 Ubuntu 22.04 的支持。

安装指南:https://docs.amd.com/bundle/ROCm-Installation-Guide-v5.3

相关内容