在 AMD ROCm 上安装与卸载 HPC SDK:AMD Instinct 高性能计算栈实战指南
【免费下载链接】legacy-rocm-buildAMD ROCm™ Software - GitHub Home项目地址: https://gitcode.com/GitHub_Trending/ro/legacy-rocm-build
AMD ROCm HPC SDK 是面向 AMD Instinct GPU 的高性能计算(HPC)库与工具集合,为科学计算、数值线性代数与张量运算提供开箱即用的加速能力。本文基于当前仓库的 docs/components/hpc-sdk/install.rst 整理,完整覆盖在 Ubuntu、Debian、RHEL、Oracle Linux、Rocky Linux 与 SLES 上通过 apt/dnf/zypper 包管理器及 tarball 两种方式安装、验证、卸载 HPC SDK 的完整流程,并深入解读其背后的amdrocm-hpc7.14元包、GPU 架构选择器与 ROCm 依赖关系,读完即可在自己的 AMD GPU 集群上落地一套可复现的 HPC 软件环境。
HPC SDK 是什么:面向 AMD Instinct 的高性能计算软件栈
AMD ROCm HPC SDK 为 AMD Instinct GPU 提供高性能计算库与工具。它建立在标准 ROCm 安装之上——ROCm for HPC 应用和容器运行在标准 ROCm 安装环境内,因此安装 HPC SDK 之前,系统必须已具备符合要求的 ROCm 运行时与 amdgpu 驱动。
从仓库文档可以确认,HPC SDK 随安装捆绑打包了两款核心库:
- hipTensor:张量运算库,覆盖 elementwise、reduction 与张量缩并(contraction)等操作。仓库 CHANGELOG.md 记录了其 API 演进:
hiptensorInitTensorDescriptor、hiptensorContractionDescriptor_t等旧接口正逐步迁移到统一的hiptensorCreateTensorDescriptor、hiptensorOperationDescriptor_t、hiptensorCreatePlan等新 API,实现跨操作的一致性设计、多阶段执行与计划(plan)复用。 - rocALUTION:稀疏迭代求解器库,用于求解大型线性系统。其 CHANGELOG 条目(如 CHANGELOG.md)显示它支持通过
install.sh/rmake.py脚本自定义构建,并提供--clients-only等选项,默认构建标准已升级到 C++17。
两者的许可均记录在 docs/about/license.md,分别为 MIT 许可证。从仓库的 default.xml 清单可以看出 rocALUTION 是 ROCm 官方版本管理(repo manifest)体系内的标准组件,与整个 ROCm 栈一同构建发布。
注意:HPC 应用容器是通过 AMD InfinityHub-CI 发布的,每个容器提供参数用于指定 ROCm、OpenMPI、UCX 和 Ubuntu 的源码分支与发行版本。
安装前置条件:先确认兼容性与系统准备
安装 HPC SDK 前,务必确认系统满足 ROCm 的硬件、软件与驱动要求。支持哪些 GPU 与操作系统,参见仓库中的 docs/compatibility/compatibility-matrix.rst。
在 Linux 上安装 HPC SDK(包管理器方式)之前,需要完成 docs/install/include/100-prerequisites.rst 中列出的两类关键准备工作:
安装依赖包
部分 ROCm 工具依赖libatomic与libquadmath才能正常运行,按发行版安装:
# Ubuntu / Debian sudo apt install libatomic1 libquadmath0 # RHEL / Oracle Linux / Rocky Linux sudo dnf install libatomic libquadmath # SLES sudo zypper install libatomic1 libquadmath0配置 GPU 访问权限
Linux 下 GPU 访问默认由video和render系统组控制。两种配置方式任选其一:
方式一:组成员(group membership)
# 将当前用户加入 render 和 video 组 sudo usermod -a -G render,video $LOGNAME方式二:udev 规则(系统级、更细粒度)
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 triggervideo组传统上处理视频设备访问,render组通过 DRM render node 管理 GPU 渲染访问。应用全部设置后需要重启系统。
企业发行版额外准备
- RHEL:需先注册系统(
subscription-manager register),并启用 EPEL 与 CodeReady Builder 仓库(不同版本对应不同 baseurl)。 - SLES:需通过
sudo SUSEConnect -r <REGCODE>注册,并sudo zypper update。 - Oracle / Rocky Linux:同样需要添加 EPEL 仓库并执行
sudo crb enable。
安装方式总览:包管理器与 tarball 二选一
HPC SDK 提供两种安装路径,取决于你是如何安装基础 ROCm 的。仓库中的安装方法对比表(docs/install/include/050-install-methods.rst)显示 ROCm 共支持包管理器(apt/dnf/zypper)、pip、tarball、runfile 四种方式,其中 HPC SDK 走包管理器或tarball两条路线:
| 安装方法 | 适用平台 | 适用场景 | 安装范围 |
|---|---|---|---|
| 包管理器(apt/dnf/zypper) | Linux | 传统 Linux 安装、系统托管、自动 post-install | 系统级 |
| Tarball | Linux / Windows | 自包含、可移植部署,单体安装(包含所有组件) | 系统级 / 自定义目录 |
基础 ROCm 安装:包管理器方式
包管理器方式下,HPC SDK 依赖已注册的 ROCm 软件仓库。以 Ubuntu 24.04 为例,注册仓库:
# 下载并安装 GPG 密钥 sudo mkdir --parents --mode=0755 /etc/apt/keyrings wget https://repo.amd.com/rocm/packages-multi-arch/gpg/rocm.gpg -O - | \ gpg --dearmor | sudo tee /etc/apt/keyrings/amdrocm.gpg > /dev/null sudo tee /etc/apt/sources.list.d/rocm.list << EOF deb [arch=amd64 signed-by=/etc/apt/keyrings/amdrocm.gpg] https://repo.amd.com/rocm/packages-multi-arch/ubuntu2404 stable main EOF sudo apt updateRHEL/Rocky/Oracle 系使用 dnf 写入/etc/yum.repos.d/rocm.repo,SLES 使用 zypper 写入/etc/zypp/repos.d/rocm.repo,均通过https://repo.amd.com/rocm/packages-multi-arch/下的对应发行版子路径提供软件源。仓库注册完成后,再安装 ROCm 基础元包,例如全架构sudo apt install amdrocm7.14,或按具体 GPU 架构安装amdrocm7.14-gfx942等(详见 docs/install/include/200-install.rst)。安装 ROCm 前如已有 7.2.4 或更早版本,需先卸载。
核心实操:按平台与 GPU 架构安装 HPC SDK
Tarball 方式:无需额外步骤
如果使用标准 ROCm tarball 安装,HPC SDK 已随附在内,无需任何附加操作。这也意味着在 tarball 场景下没有独立的 "HPC Expansion" tarball——如仓库 docs/about/release-notes.md 所述,amdrocm-hpc元包会安装 rocALUTION 与 hipTensor,而标准 ROCm tarball 本身已包含这两个库。
包管理器方式:三个维度决定安装命令
包管理器安装命令由三个选择条件决定:
- Linux 发行版→ 决定使用
apt/dnf/zypper; - GPU 架构(gfx 代号)→ 决定安装全部架构元包还是特定架构元包;
- 安装范围→ 每个场景需要同时安装
amdrocm-hpc7.14与amdrocm-hpc-sdk7.14两个包(或对应的-gfxxxx变体)。
先完成 docs/install/include/100-prerequisites.rst 中的 ROCm 安装前置条件(依赖与 GPU 权限配置),再执行:
场景一:全部 GPU 架构(fam=all)
# Ubuntu / Debian sudo apt install amdrocm-hpc7.14 amdrocm-hpc-sdk7.14 # RHEL / Rocky Linux / Oracle Linux sudo dnf install amdrocm-hpc7.14 amdrocm-hpc-sdk7.14 # SLES sudo zypper install amdrocm-hpc7.14 amdrocm-hpc-sdk7.14场景二:按 GPU 架构安装(推荐)
文档为每一档 GPU 架构提供了对应的-gfxxxx变体。以最常见的几款 AMD Instinct 与 Radeon 产品为例:
# AMD Instinct MI300X / MI325X / MI300A(gfx942) sudo apt install amdrocm-hpc7.14-gfx942 amdrocm-hpc-sdk7.14-gfx942 # AMD Instinct MI250X / MI250 / MI210(gfx90a) sudo dnf install amdrocm-hpc7.14-gfx90a amdrocm-hpc-sdk7.14-gfx90a # AMD Instinct MI100(gfx908) sudo zypper install amdrocm-hpc7.14-gfx908 amdrocm-hpc-sdk7.14-gfx908 # AMD Instinct MI355X / MI350X / MI350P(gfx950,文档中列出的最新代号) sudo apt install amdrocm-hpc7.14-gfx950 amdrocm-hpc-sdk7.14-gfx950gfx 架构代号与具体产品的映射,可以从仓库的 docs/install/include/gpu-selector.rst 中完整确认,例如gfx950对应 AMD Instinct MI355X / MI350X / MI350P,gfx942对应 MI325X / MI300X / MI300A,gfx90a对应 MI250X / MI250 / MI210,gfx908对应 MI100。此外文档还列出了消费级与工作站级显卡的变体,包括 Radeon PRO W7900 / W7800(gfx1100)、Radeon RX 7900 XTX(gfx1100)、Radeon RX 7800 XT / 7700 XT(gfx1101)、Radeon RX 7600(gfx1102)、Ryzen AI Max 系列 APU(gfx1151)等。
理解
-gfx变体的意义:amdrocm-hpc7.14-gfx942这类包名为“按架构裁剪”的安装提供依据。GPU 架构代号直接决定 ROCm 软件栈为该 GPU 编译的内核与库版本,选择与硬件匹配的变体可确保 hipTensor、rocALUTION 等库以针对该架构优化的形式落地。这也与仓库中 docs/reference/gpu-arch 下按 MI100/MI250/MI300/MI350 分列的 GPU 架构文档体系相呼应。
与通用 ROCm 元包的对应关系
HPC SDK 的安装结构与基础 ROCm 完全对称:基础 ROCm 使用amdrocm7.14(全架构)或amdrocm7.14-gfx942(按架构),HPC SDK 使用amdrocm-hpc7.14+amdrocm-hpc-sdk7.14(全架构)或对应的-gfxxxx变体(按架构)。amdrocm-hpc元包负责拉取 rocALUTION 与 hipTensor 两个计算库,amdrocm-hpc-sdk元包则承载 HPC SDK 的整体工具链与依赖组织,二者通常成对安装。
安装后验证:确认 GPU 可见性与运行时就绪
基础 ROCm 安装完成后,可以使用 docs/install/include/300-post-install.rst 中的工具验证环境:
# 列出检测到的 AMD GPU,确认 ROCm 运行时与驱动已正确加载 rocminfo # 查看 amd-smi 工具与库的版本信息 amd-smi versionrocminfo输出中会显示类似以下内容,确认 HSA 运行时与 GPU Agent 均就绪:
ROCk module version 6.16.6 is loaded ===================== HSA System Attributes ===================== Runtime Version: 1.21 ... Agent 1 ******* Name: gfx950 Uuid: GPU-5b920922d0067ea9 Marketing Name: AMD Instinct MI350Xamd-smi version则输出工具、库、ROCm 与 amdgpu 驱动各层版本,例如AMDSMI Tool: 26.5.0 | AMDSMI Library version: 26.5.0 | ROCm version: 7.14.0 | amdgpu version: 6.19.14...。在包管理器场景下,HPC SDK 组件随 ROCm 一起由系统包管理器管理,无需额外配置环境变量。
卸载 HPC SDK
卸载方式同样取决于初始安装方式:
Tarball 方式
直接遵循标准 ROCm 的卸载流程即可,无需单独移除 HPC SDK(docs/install/include/400-uninstall.rst)。tarball 安装的 ROCm 通过删除安装目录(如sudo rm -rf therock-tarball)并移除/etc/profile.d/set-rocm-env.sh或 shell 配置文件中的环境变量块完成卸载。
包管理器方式
场景一:全部 GPU 架构(fam=all)
# Ubuntu / Debian:autoremove 同时清理不再需要的依赖 sudo apt autoremove amdrocm-hpc7.14 amdrocm-hpc-sdk7.14 # RHEL / Rocky Linux / Oracle Linux sudo dnf remove amdrocm-hpc7.14 amdrocm-hpc-sdk7.14 # SLES sudo zypper remove amdrocm-hpc7.14 amdrocm-hpc-sdk7.14场景二:按 GPU 架构卸载
# Ubuntu / Debian(以 gfx942 为例) sudo apt autoremove amdrocm-hpc7.14-gfx942 amdrocm-hpc-sdk7.14-gfx942 # RHEL 系(以 gfx90a 为例) sudo dnf remove amdrocm-hpc7.14-gfx90a amdrocm-hpc-sdk7.14-gfx90a # SLES(以 gfx908 为例) sudo zypper remove amdrocm-hpc7.14-gfx908 amdrocm-hpc-sdk7.14-gfx908包管理器卸载完成后,如需彻底清理,可再移除 ROCm 仓库源并刷新缓存:Ubuntu/Debian 删除/etc/apt/sources.list.d/rocm.list并sudo apt clean all && sudo apt update;RHEL 系删除/etc/yum.repos.d/rocm.repo*并sudo dnf clean all;SLES 执行sudo zypper removerepo "rocm"并sudo zypper refresh。
常见问题与已知事项
- 版本对应关系:本文所有包名均基于 ROCm 7.14(
amdrocm-hpc7.14/amdrocm-hpc-sdk7.14),命令中的7.14是发行版本号的一部分,升级 ROCm 大版本时应同步替换。 - GPU 架构匹配:选择
-gfxxxx变体前,先用rocminfo或对照 docs/install/include/gpu-selector.rst 确认 GPU 的 gfx 代号,避免安装不匹配的架构包。 - tarball 与 HPC SDK:标准 ROCm tarball 已内置 rocALUTION 与 hipTensor,无需(也没有)单独的 HPC Expansion tarball。
- 驱动兼容性:amdgpu 驱动的兼容范围以仓库中的 docs/compatibility/compatibility-matrix.rst 为准,安装前建议先核对目标发行版与驱动版本组合。
延伸阅读
- docs/components/hpc-sdk/index.rst:AMD ROCm HPC SDK 总览,涵盖 HPC 框架与生态
- docs/install/include/100-prerequisites.rst:ROCm 安装前置条件与 GPU 权限配置
- docs/install/include/200-install.rst:ROCm 仓库注册与基础安装
- docs/install/include/300-post-install.rst:安装后验证与环境配置
- docs/install/include/400-uninstall.rst:完整卸载流程
- docs/install/include/050-install-methods.rst:四种安装方式对比
- docs/compatibility/compatibility-matrix.rst:支持的硬件与操作系统矩阵
- CHANGELOG.md:rocALUTION 与 hipTensor 的版本演进与 API 变更记录
【免费下载链接】legacy-rocm-buildAMD ROCm™ Software - GitHub Home项目地址: https://gitcode.com/GitHub_Trending/ro/legacy-rocm-build
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考