ROCm 7.14 安装前置条件完整指南:系统校验、依赖配置与 GPU 访问权限设置
2026/9/17 10:37:52 网站建设 项目流程

ROCm 7.14 安装前置条件完整指南:系统校验、依赖配置与 GPU 访问权限设置

【免费下载链接】legacy-rocm-buildAMD ROCm™ Software - GitHub Home项目地址: https://gitcode.com/GitHub_Trending/ro/legacy-rocm-build

本文以 AMD ROCm 官方仓库 docs/install/include/100-prerequisites.rst 为核心骨架,系统讲解在 Linux(Ubuntu、Debian、RHEL、Oracle Linux、Rocky Linux、SLES)、Windows 与 WSL2 环境中安装 ROCm 之前必须完成的全部前置工作。读完本文,你将掌握:如何确认系统与硬件是否受支持、如何为 Docker 容器补齐安装所需的基础软件、如何完成企业级 Linux 的系统注册与仓库配置、如何为 pip 安装方式准备受支持的 Python 版本,以及如何通过组成员身份或 udev 规则两种方式为普通用户授予 GPU 访问权限。

一、概述:为什么前置条件决定 ROCm 安装成败

ROCm(Radeon Open Compute)是一个由固件、内核驱动与用户态组件协同构成的复杂软件栈。安装前若系统缺少必要依赖、仓库未注册、GPU 设备节点权限不正确,后续即使安装命令执行成功,也会出现设备不可见、rocminfo无输出或应用无法访问 GPU 等问题。

在 docs/install/rocm.rst 的安装流程编排中,前置条件章节(_rocm-prerequisites,对应 docs/install/include/100-prerequisites.rst)位于安装方法选择与正式安装步骤之间,是每次安装前必须逐项核对的一环。该文档同时服务于四种安装方式(软件包管理器 apt/dnf/zypper、pip、Tarball、Runfile 安装器,详见 docs/install/include/050-install-methods.rst),不同方式对前置依赖的要求略有差异。

该文档采用条件化选择器(.. selected::指令)组织内容,依据操作系统、安装方式、GPU 家族与发行版版本动态渲染对应的前置步骤。读者在实际操作时,只需关注与自己环境匹配的分支即可。

二、第一步:通过兼容性矩阵确认系统受支持

无论使用何种操作系统,安装 ROCm 前都必须先确认系统满足全部前置条件。官方给出的第一项检查就是确认硬件与系统组合是否在支持列表内,详见兼容性矩阵。

兼容性矩阵(docs/compatibility/compatibility-matrix.rst)按照 AMD Instinct、AMD Radeon、AMD Ryzen 三大设备家族分类,逐 GPU 型号列出支持的操作系统、内核驱动(amdgpu)与固件版本要求。文档明确指出:

ROCm 依赖固件、驱动与用户态组件之间协调一致的版本栈。维持这些层之间的版本对齐,可确保 GPU 按预期工作并保持性能,尤其对 AMD 数据中心产品至关重要。

因此,在开始任何安装操作之前,请先到兼容性矩阵页面确认你的 GPU/APU 型号、操作系统发行版与版本均在支持范围内,并核对内核驱动与固件版本要求。若你的 GPU 不在列表中,可能属于 TheRock nightly 构建的社区支持范畴,需按对应指引处理(见 docs/install/rocm.rst 中的说明)。

三、Linux 环境:Docker 容器内安装的必备软件

若在 Docker 容器内安装 ROCm,官方专门提供了提示块(dropdown):Docker 镜像通常只包含最小安装集,部分关键软件可能缺失,会导致 ROCm 安装失败。以下命令按发行版与安装方式组合给出。

3.1 Ubuntu / Debian 系

  • 软件包管理器(pkgman)安装
apt update apt install sudo wget gpg
  • pip 安装
apt update apt install sudo cmake libgfortran5
  • Tarball 安装
apt update apt install sudo wget python3
  • Runfile 安装
apt update apt install sudo wget curl python3 rsync

3.2 RHEL / Rocky Linux / Oracle Linux 系

  • 软件包管理器 / pip / Tarball 安装
dnf install sudo wget
  • Runfile 安装
dnf install sudo wget rsync

3.3 SLES 系

  • 软件包管理器安装
zypper install sudo wget SUSEConnect
  • pip 安装
zypper install sudo wget cmake libgfortran5
  • Tarball 安装
zypper install sudo wget
  • Runfile 安装
zypper install sudo wget rsync

可以看到,各安装方式的基础依赖差异主要在gpg(仓库签名密钥校验)、curl/rsync(下载与同步)、cmake/libgfortran5(编译运行库)与python3上,读者可按需取舍。

四、Windows 环境:安装前的系统准备

在 Windows 上安装 ROCm(pip 或 Tarball 方式,见 docs/install/include/install-method-selector.rst)之前,需要完成两项准备工作:

4.1 卸载冲突软件

移除任何已有的 Windows 版 HIP SDK 安装及其他冲突的 AMD 图形软件。使用 GUI 卸载时,路径为:

控制面板 > 程序 > 卸载程序

4.2 关闭可能干扰 ROCm 的 Windows 安全功能

必须关闭以下两项安全功能,否则会干扰 ROCm 的正常运行:

  • WDAG(Windows Defender Application Guard):在“控制面板 > 程序 > 启用或关闭 Windows 功能”中,取消勾选“Microsoft Defender Application Guard”;
  • SAC(Smart App Control,智能应用控制):在“设置 > 隐私和安全性 > Windows 安全 > 应用和浏览器控制 > 智能应用控制设置”中,将其设为关闭

说明:Windows 安装方式下,前置条件章节仅要求确认系统受支持并完成上述清理与安全设置,不涉及 Linux 的仓库注册与内核驱动步骤(AMD 显卡驱动通过 AMD Software: Adrenalin Edition 提供,见 docs/install/include/200-install.rst)。

五、WSL2 环境:先安装 WSL2 与对应 Ubuntu 版本

若使用 Windows Subsystem for Linux 2(WSL2)环境安装 ROCm,需先在 Windows 系统上安装 WSL2 及对应版本的 Ubuntu(26.04 / 24.04 / 22.04,具体取决于你的配置),然后在 WSL2 环境中完成后续全部指令。安装 WSL2 的方法参考微软官方文档(Microsoft Learn 的 "How to install Linux on Windows with WSL2")。

WSL2 环境还有一项额外要求(针对 Tarball 等构建场景):构建 ROCDXG 库需要GCC 11.4 或更高版本以及CMake 3.15 或更高版本。结合依赖安装命令:

sudo apt install libatomic1 libquadmath0 gcc g++ cmake

六、Ryzen APU 用户:Ubuntu 24.04 需要安装 OEM 内核

对于 Ryzen APU 用户,官方特别标注:Ryzen APU(gfx1150、gfx1151、gfx1152、gfx1153 和 gfx1103)在 Ubuntu 24.04 上需要 OEM 内核 6.14。安装命令:

sudo apt update && sudo apt install linux-oem-24.04c

安装完成后必须重启系统,否则新内核不会生效。该要求同时出现在安装方式分支(pkgman/pip/tar)与图形(graphics)工作负载分支中,且在各分支内均以可展开提示(dropdown)或独立小节形式重复出现,说明这是 Ryzen APU 平台上易被忽视的关键前置项。

七、企业级 Linux:注册系统与更新

7.1 注册 RHEL 系统

注册 RHEL 系统以启用 Red Hat 仓库访问权限,确保能够下载和安装软件包。RHEL 10.x 分支:

subscription-manager register --username <username> --password <password>

RHEL 9.x / 8.10 分支(额外执行自动订阅绑定):

subscription-manager register --username <username> --password <password> subscription-manager attach --auto

7.2 注册 SLES 系统

sudo SUSEConnect -r <REGCODE>

7.3 更新系统

注册完成后应更新系统至最新软件包,这对较旧版本 RHEL/SLES 上的新硬件尤为重要。

RHEL 各版本对应命令(--releasever指定目标版本,--exclude=\*release\*避免更新 release 相关包):

# RHEL 10.2 sudo dnf update --releasever=10.2 --exclude=\*release\* # RHEL 10.0 sudo dnf update --releasever=10.0 --exclude=\*release\* # RHEL 9.8 / 9.6 / 9.4 sudo dnf update --releasever=9.8 --exclude=\*release\* sudo dnf update --releasever=9.6 --exclude=\*release\* sudo dnf update --releasever=9.4 --exclude=\*release\* # RHEL 8.10 sudo dnf update --releasever=8.10 --exclude=\*release\*

SLES 更新命令:

sudo zypper update

Oracle Linux(软件包管理器方式)更新命令:

# Oracle Linux 10 sudo dnf update --releasever=10.1 --exclude=\*release\* # Oracle Linux 9 sudo dnf update --releasever=9.7 --exclude=\*release\* # Oracle Linux 8 sudo dnf update --releasever=8.10 --exclude=\*release\*

八、补充软件仓库:EPEL 与 CodeReady Builder

ROCm 安装包依赖的某些软件包不在默认软件仓库中,因此需要在 RHEL/Oracle Linux/Rocky Linux 上额外启用对应仓库。这部分对 graphics 工作负载与软件包管理器方式均有要求。

8.1 RHEL 系列

  • RHEL 10.2 / 10.0
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-10.noarch.rpm sudo rpm -ivh epel-release-latest-10.noarch.rpm sudo dnf config-manager --enable codeready-builder-for-rhel-10-x86_64-rpms
  • RHEL 9.8 / 9.6 / 9.4
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm sudo rpm -ivh epel-release-latest-9.noarch.rpm
sudo dnf config-manager --enable codeready-builder-for-rhel-9-x86_64-rpms
  • RHEL 8.10
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm sudo rpm -ivh epel-release-latest-8.noarch.rpm
sudo dnf config-manager --enable codeready-builder-for-rhel-8-x86_64-rpms

8.2 Oracle Linux 系列

Oracle Linux 使用crb命令启用 CodeReady Builder 仓库:

# Oracle Linux 10 / 9 / 8 通用步骤 wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-10.noarch.rpm sudo rpm -ivh epel-release-latest-10.noarch.rpm sudo crb enable

(Oracle Linux 9 与 8 对应替换epel-release-latest-9/8.noarch.rpm下载链接。)

8.3 Rocky Linux 系列

wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm sudo rpm -ivh epel-release-latest-9.noarch.rpm sudo crb enable

九、安装附加运行库:libatomic 与 libquadmath

部分 ROCm 工具依赖libatomiclibquadmath库才能正确运行,需使用各发行版的包管理器安装。该要求同时适用于 graphics 工作负载与 pkgman/pip/tar 安装方式分支。

发行版命令
Ubuntu / Debiansudo apt install libatomic1 libquadmath0
RHEL / Oracle Linux / Rocky Linuxsudo dnf install libatomic libquadmath
SLESsudo zypper install libatomic1 libquadmath0
WSL2sudo apt install libatomic1 libquadmath0 gcc g++ cmake

注:WSL2 分支中额外附带 GCC 与 CMake,用于构建 ROCDXG 库(见第五节)。

十、pip 安装方式:准备受支持的 Python 版本

若选择 pip 安装方式(ROCm 组件以 Python wheel 包形式安装在虚拟环境中,详见 docs/install/include/000-intro.rst),必须预先安装受支持的 Python 版本。官方文档按发行版与版本给出了推荐命令,且要求同时安装venv模块或pip组件:

系统Python 版本命令
Ubuntu 26.04Python 3.14sudo apt install python3.14 python3.14-venv
Ubuntu 24.04Python 3.12sudo apt install python3.12 python3.12-venv
Ubuntu 22.04Python 3.11sudo apt install python3.11 python3.11-venv
Debian 13Python 3.13sudo apt install python3.13 python3.13-venv
Debian 12Python 3.11sudo apt install python3.11 python3.11-venv
RHEL 10.xPython 3.12sudo dnf install python3.12 python3.12-pip
RHEL 9.x / 8.10Python 3.11sudo dnf install python3.11 python3.11-pip
Oracle Linux 10Python 3.12sudo dnf install python3.12 python3.12-pip
Oracle Linux 9 / 8Python 3.11sudo dnf install python3.11 python3.11-pip
Rocky LinuxPython 3.11sudo dnf install python3.11 python3.11-pip
SLES 16.0Python 3.13sudo zypper install -y python313 python313-pip
SLES 15.7Python 3.11sudo zypper install -y python311 python311-pip
Windows3.11 / 3.12 / 3.13 / 3.14从官方 Python 下载页安装

pip 方式安装完成后,可通过pip freeze | grep rocmwhich rocm-sdkls .venv/bin等命令检查安装内容(见 docs/install/include/300-post-install.rst)。另外,rocm元包支持通过 extra 组合按需安装组件,例如rocm[libraries,devel],可选 extra 包括libraries(预编译数学与 ML 宿主库,PyTorch/JAX 必需)、devel(编译器、CMake 配置、头文件与静态库)、device-<gfx>(指定目标的预编译 GPU 内核)与profiler等,完整对照表见 docs/install/include/pip-packages-table.rst。

十一、GPU 访问权限配置:组成员身份 vs udev 规则

这是 Linux 安装方式(pkgman / pip / tar)与 graphics 工作负载下最关键的前置配置。ROCm 提供两种主流的 GPU 访问权限配置方法,各有权衡,选择取决于你的具体需求与系统管理偏好。

11.1 方式一:组成员身份(Group membership)

默认情况下,GPU 访问由 Linux 系统组的videorender成员身份控制。其中video组传统上负责视频设备访问,render组通过 DRM render 节点管理 GPU 渲染。

将当前用户加入这两个组:

# Add the current user to the render and video groups sudo usermod -a -G render,video $LOGNAME

原理说明:render组对应 DRM render 节点(/dev/dri/renderD*),现代 AMD GPU 的计算访问(通过 ROCk 内核驱动与 KFD 设备)依赖该节点;加入组后新会话即可访问设备节点。该方式管理粒度适中,适合大多数单机开发场景。

11.2 方式二:udev 规则(系统级)

udev 规则是一种灵活的系统级设备权限管理方式,无需管理用户组,同时支持细粒度的 GPU 访问控制。启用 udev 规则并授予所有用户 GPU 访问权限:

sudo tee /etc/udev/rules.d/70-amdgpu.rules << EOF KERNEL=="kfd", GROUP="render", MODE="0666" SUBSYSTEM=="drm", KERNEL=="renderD*", GROUP="render", MODE="0666" EOF sudo udevadm control --reload-rules sudo udevadm trigger

规则解释:

  • KERNEL=="kfd":匹配 AMD GPU 计算设备节点(Kernel Fusion Driver,ROCk 使用的计算接口);
  • SUBSYSTEM=="drm", KERNEL=="renderD*":匹配 DRM 子系统下的所有 render 节点;
  • GROUP="render":将设备节点归属render组;
  • MODE="0666":向所有用户开放读写权限(全局可访问);
  • udevadm control --reload-rulesudevadm trigger:重载规则并对现有设备重新触发,使新规则立即生效。

11.3 生效方式

无论选择哪种方式,修改后都需要重启系统以应用全部设置(官方 note 明确要求 reboot)。

十二、前置条件清单速查

检查项LinuxWindowsWSL2
确认系统受支持(兼容性矩阵)必须必须必须
Docker 容器补装基础软件按需按需
卸载旧 HIP SDK / 冲突图形软件必须
关闭 WDAG 与 SAC必须
安装 WSL2 与对应 Ubuntu 版本必须
Ryzen APU 安装 OEM 内核 6.14(Ubuntu 24.04)按需按需
注册 RHEL / SLES 系统按需
更新系统软件包建议
启用 EPEL / CodeReady Builder 仓库按需
安装 libatomic / libquadmath必须必须(含 gcc/g++/cmake)
安装受支持的 Python(pip 方式)必须必须
配置 GPU 访问权限(组 / udev)必须必须

完成上述前置条件后,即可进入正式安装阶段:注册 ROCm 软件仓库(docs/install/include/200-install.rst)并安装核心包(如sudo apt install amdrocm7.14或对应amdrocm7.14-gfxXXX设备包),随后通过rocminfoamd-smi version验证安装(docs/install/include/300-post-install.rst)。前置条件中的每一项疏漏,都可能表现为驱动加载失败、设备不可枚举或权限拒绝,因此在安装前逐项核对本清单,是确保 ROCm 一次安装成功的最有效手段。

【免费下载链接】legacy-rocm-buildAMD ROCm™ Software - GitHub Home项目地址: https://gitcode.com/GitHub_Trending/ro/legacy-rocm-build

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询