Navi10 上配备 Pytorch 的 AMD ROCm(RX 5700 / RX 5700 XT)

mak*_*nse 7 gpu deep-learning amd-gpu pytorch amd-rocm

我是拥有 AMD GPU(RX 5700、Navi10)的悲惨生物之一。我想使用最新的 PyTorch 库在本地计算机上进行一些深度学习并停止使用云实例。

我在互联网上看到 AMD 承诺在未来 2-4 个月内支持 Navi10(1-2 年前写的帖子),但是,我不认为他们发布了“官方”支持。

我在本地计算机上安装了 ROCm,它实际上检测到我的 GPU,一切看起来都很好,这是rocminfo输出。

rocminfo 输出

我安装了必要的 PyTorch ROCm 版本,但是当我尝试运行代码时,出现以下错误。

hipErrorNoBinaryForGpu:无法找到所有当前设备的代码对象!

我想这是因为 ROCm 仍然不支持 gfx1010 或者我在这一点上迷失了。

如果有人可以提供一种使 ROCm 工作的方法(最好无需再次为 gfx1010 编译整个包)提供像 CUDA 用户一样使用 AMD GPU 的方法,我会很高兴。

kir*_*111 10

设置HSA_OVERRIDE_GFX_VERSION=10.3.0环境变量。

例如,在终端中输入:

$ HSA_OVERRIDE_GFX_VERSION=10.3.0 python launch.py
Run Code Online (Sandbox Code Playgroud)

我使用 5700xt 运行稳定扩散几个月,它有效。

  • 因为 GFX1030 是 RDNA2 的系列型号名称(即该系列包含 6700xt、6800xt 和 6900xt),并且自我上次发表评论以来(该系列中只有 6900xt 得到 ROCM 官方支持) HSA_OVERRIDE_GFX_VERSION=10.3.0 意味着您假装拥有6900xt,以便 ROCM 允许您运行以下 python 文件。此外,对于rocm_tensorflow(至少在使用opencv时),有时假装是RX580很有用(HSA_OVERRIDE_GFX_VERSION = 8.3.0),否则我的5700xt将出现内存错误!!!) (3认同)