Prhub

#40037 [ROCm] Add gfx1102/gfx1103 support

原始 PR 作者 mgehre-amd 合并时间 2026-04-23 16:32 文件变更 3 提交数 2 评论 0 代码增减 +21 / -35

执行摘要

新增 gfx1102/gfx1103 GPU 架构支持

gfx1103(RDNA 3,如Radeon 780M iGPU)未包含在HIP_SUPPORTED_ARCHS列表及编译时架构宏中,导致wvSplitK内核在gfx1103上编译为UNREACHABLE_CODE(assert false),运行时崩溃。

建议合入。此修复对AMD RDNA 3 iGPU用户为必需,且改动简洁、风险低。值得注意的要点是采用编译器提供的通用宏而非手动枚举,这是一种更健壮的做法,未来新增架构时无需修改源代码。

讨论亮点

无实质讨论,仅有一条自动机器人评论和一条approve。

实现拆解

  1. CMakeLists.txt:在HIP_SUPPORTED_ARCHS中添加gfx1102gfx1103,确保CMake构建能识别并编译这些架构。
  2. csrc/rocm/skinny_gemms.cu:移除手动枚举各gfx11xx/gfx12xx的#if defined(...)宏,改用编译器提供的__GFX11____GFX12__宏;同时将内核条件编译中的__HIP__GFX12__替换为__GFX12__
  3. csrc/rocm/attention.cu:类似地,移除手动枚举的__HIP__GFX11____HIP__GFX12__宏定义,在引用处替换为编译器内置的__GFX11____GFX12__
文件 模块 状态 重要度
csrc/rocm/skinny_gemms.cu ROCm 内核 modified 4.03
csrc/rocm/attention.cu ROCm 内核 modified 3.25
CMakeLists.txt 构建配置 modified 1.72

关键符号

wvSplitKrc wvSplitKQ_hf_sml_ paged_attention_ll4mi_reduce_kernel

分析完成后,这里会展示 LLM 生成的相对完整源码片段和详细注释。

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

低风险。改动为宏替换和列表扩展,不涉及逻辑变更。编译器提供的__GFX11__/__GFX12__已在所有gfx11xx/gfx12xx上定义,替换后不会影响现有架构。但需确保所有使用__HIP__GFX11__/__HIP__GFX12__的地方已全部替换,避免遗漏。

影响范围限定在AMD ROCm平台。支持gfx1102/gfx1103后,搭载Radeon 780M等iGPU的设备可运行vLLM。对现有gfx1100/1101/1150等架构无影响,对NVIDIA/Intel平台无影响。

宏替换覆盖性检查

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论