llama.cpp 修復 RDNA3/RDNA4 上 HIP bf16 WMMA 編譯失敗
llama.cpp 修復了 HIP 後端在 AMD RDNA3(gfx1150/1151)與 RDNA4(gfx1200/1201)上 bf16 WMMA 的編譯失敗。原因是 __builtin_amdgcn_wmma_f32_16x16x16_bf16_w32 等內建要求 A/B 運算元為 short 向量而非 __bf16,原先按 __bf16 宣告分片會直接報錯。
原標題:b11847
閱讀原文
| 評分 | 38 / 40(平均 39,門檻 60) |
|---|---|
| 狀態 | 未入選 |
原文
相關報導
llama.cpp 修復 ARM NEON fp32→fp16 未走硬體指令
llama.cpp 建置 b11761 修復了 ARM NEON 分支只選中 fp16→fp32、漏掉 fp32→fp16 的問題:此前該方向一直靜默回退到軟體實現,已定義的 fcvt 硬體指令無人呼叫。補丁讓該分支同時選中兩個方向,並加入 #error,任何定義了 COMPUTE 宏卻未選中對應實現的平台分支會直接編譯失敗。fp16→fp32 方向按 PR 30343 仍刻意走查表,因此保留 !defined(F16C) 例外;
llama.cpp 修復 HIP 建置:補充位元組 permute 回退
llama.cpp 修復了 HIP 後端在缺少 __builtin_amdgcn_perm 時的建置失敗。由於 amdgcnspirv 會拒絕未經 __builtin_amdgcn_is_invocable 保護的目標專用 builtin,此前 145 個 HIP 檔案中有 66 個無法編譯。此次改動把 perm 呼叫封裝進一個輔助函式,目標支援時保留 v_perm_b32,否則改用可移植的位元組選擇實現;輔助函式被移到 vendors/hip.h。
llama.cpp b11555 修復 AVX2 CPU 未啟用 F16C 的問題
llama.cpp 發布 b11555,修復了在支援 F16C 的 AVX2 CPU 上未啟用 F16C 的問題,可改善 x86 平台的 CPU 推理表現。同步更新的預編譯包覆蓋 macOS Apple Silicon、Windows 與 Linux 的 CUDA 12/13、Vulkan、ROCm 10.0、SYCL、OpenVINO,以及 Android、openEuler 等平台;
llama.cpp 修復 Vulkan 後端 RDNA4 矩陣向量調優
llama.cpp 發布 b11389 版本,修復了 Vulkan 後端在 RDNA4 架構上的矩陣向量運算調優問題(PR #29934)。該版本繼續提供覆蓋 macOS、Linux、Windows、Android 等平台的預編譯二進位制,包括 Vulkan、CUDA、ROCm、SYCL 等後端,其中 macOS Apple Silicon 的 KleidiAI 啟用版和 openEuler 建置被停用。
llama.cpp b11760 修復 HIP/CUDA mmf 歸約中 tile 寬度不能被 64 整除的問題
llama.cpp 發布建置 b11760,首要變更是修復 HIP/CUDA 後端在 mmf 歸約中 tile 寬度不能被 64 整除時的計算錯誤(PR #30836)。