AISpot

搜尋

找到 20 筆

llama.cpp releasesAI 評分44

llama.cpp Vulkan 支援 MUL_MAT 第三維廣播,不再回退 CPU

llama.cpp 建置 b11933 修復 Vulkan 後端:MUL_MAT 允許 src0 與 src1 在第三維(ne3)上不相等時進行廣播,這類矩陣乘不再回退到 CPU 並複製權重。此前 supports_op 會拒絕所有 ne3 不相等的 MUL_MAT,而 mul_mm、mul_mmq、mul_mat_vec 已通過 broadcast3 支援該廣播;回退還使 split 佈局隨 ubatch 的 stream 數量變化。

llama.cpp releasesAI 評分42

llama.cpp b11609 修復 WebGPU 重複專家 ID 的 mul_mat_id

llama.cpp 發布 b11609,修復 WebGPU 後端在 expert id 重複時 mul_mat_id 的計算錯誤,屬 CI 修復。該問題涉及 MoE 模型的專家路由,同版本照常給出各平台預編譯建置,覆蓋 macOS Apple Silicon(arm64)、Linux 的 CUDA 12/13 與 ROCm 10.0、Windows x64 CUDA/Vulkan、Android arm64,以及 Snapdragon 的 CPU、Adreno GPU 與 H…

llama.cpp releasesAI 評分52

llama.cpp 修復 Metal 後端 mul_mat_id 重複 id 錯誤

llama.cpp 建置版本 b11569 修復了 Metal 後端 mul_mat_id 在 id 重複時輸出錯誤、丟行乃至溢位到下一個 expert 切片的問題。新實現先做一遍預掃描,為每個 expert 建立緊湊的 (token, slot) 條目列表,並借鑑 Vulkan 方案讓 map0 額外輸出 tile 描述符,kernel_mul_mm_id 按描述符處理單個 tile,重複 id 由此被隱式處理。

llama.cpp releasesAI 評分36

llama.cpp b11835:SYCL 將 device 傳入 mul_mat_uses_onednn

llama.cpp 發布 b11835 建置版本,主要變更是 SYCL 後端把 device 傳入 mul_mat_uses_onednn(#31014)。該版本同步提供 macOS Apple Silicon、Linux/Windows 的 CPU、Vulkan、CUDA 12/13、ROCm 10.0、OpenVINO、SYCL 等預編譯包,並包含 Android arm64 與 Snapdragon 的 CPU/Adreno GPU/Hexagon NPU 建置。

llama.cpp releasesAI 評分40

llama.cpp b11693 修復 SYCL 後端 mul_mat 記憶體錯誤

llama.cpp 發布建置 b11693,核心改動是修復 SYCL 後端在 mul_mat、split buffer 和 host pool 中的記憶體錯誤(PR #29889)。該版本同時更新了預編譯產物清單,覆蓋 macOS/iOS、Linux、Windows、Android,包含 CUDA 12/13、Vulkan、ROCm 10.0、OpenVINO 以及 SYCL FP32/FP16 等後端。

llama.cpp releases● 精選AI 評分74

llama.cpp 修復 Metal 後端 MUL_MAT+ADD 融合錯誤

llama.cpp 合併 PR #30100,修復 Metal 後端 MUL_MAT+ADD 融合中殘差運算元的選擇錯誤:當 ADD 的兩個運算元都是矩陣乘法輸出(x = W1@u + W2@v)時,舊邏輯會選中自身從未寫入的輸出緩衝區,導致結果錯誤。Clef 決策模型因此在 Metal 上機率趨近均勻,billing 輸出 0.28,而 CPU 後端為 0.977,且同一檔案在 CPU 上結果正確,說明並非量化問題。

llama.cpp releasesAI 評分56

llama.cpp 為 Hexagon NPU 加入 Q1_0 與 Q2_0 量化支援

llama.cpp 建置 b11716 為高通 Hexagon NPU 新增 Q1_0、Q2_0 兩種低位元量化的支援,其中 Q1_0 權重已可在 2D HMX MUL_MAT 路徑中啟用。同一批提交還改寫了分塊(tiling)實現、去掉迴圈內除法、最佳化 Q1_0 佈局以降低解包與 vrmpy 開銷,並修正 MUL_MAT_NX 對正方形分塊的假設,因為 Q1/Q2 使用非正方形分塊。

llama.cpp releasesAI 評分43

b11618: HIP: use 64-row MMQ tiles for some quant types on RDNA3.5 (#28195)

llama.cpp 的 HIP 後端把 64 行/128 執行緒的 MMQ tile 擴充套件到更多量化型別與 J 值組合,覆蓋 RDNA3.5(gfx115x);此前該配置只在 J≤32 時使用,更大的 tile 會佔滿 LDS,無法讓每個 CU 再容納一個工作組。在 gfx1151 上對 100 個 MUL_MAT 形狀做三輪測試,中位提升 2.1%、最佳 26.0%,5 個 MUL_MAT_ID 形狀中位提升 8.0%。J=96 因未獲益被明確排除,其餘條目保持不變。

llama.cpp releasesAI 評分43

b11730: cuda: cap MMQ Stream-K blocks at available work (#30553)

llama.cpp 建置 b11730 調整 CUDA 後端 MMQ 的 Stream-K 排程:網格上限從按 SM 數量啟動改為實際 k-block 數量,並進一步按所有輸出 tile 的 K_vram 迭代總數(部分迭代向上取整)收緊。這能去掉小矩陣下無活可乾的多餘 CUDA 塊及其啟動與 fixup 開銷,有效取整 K 範圍與數值結果不變。代價是部分迭代可能改變 FP32 求和的分組方式,MUL_MAT 與 MUL_MAT_ID 後端測試已在 RTX 5090 上通過。

llama.cpp releasesAI 評分56

llama.cpp CUDA 後端融合 FFN gate/up 矩陣乘與 GLU

llama.cpp 的 CUDA 後端把稠密 FFN 的 gate 與 up 兩次矩陣乘合併為一次 mul_mat_q 呼叫,並在寫回階段直接計算 GLU,主要加速 prompt 處理。權重按每 8 行交錯裝載,使每個執行緒同時持有 up 值與對應的 gate 值,MMA 迴圈、warp 佈局與 vec_dot 保持原樣,寫回只輸出一半行。

llama.cpp releasesAI 評分41

llama.cpp 修復 Metal 大矩陣偏移溢位問題

llama.cpp 建置版本 b11895 修復了 Metal 後端在大型矩陣輸出偏移時出現的整數溢位,同時加寬了 batch 偏移與 MUL_MAT_ID 的 token 索引。改動由 Codex 輔助完成,屬於影響大模型在 Apple Silicon 上推理正確性的底層修復,本次建置仍按慣例提供 macOS、Linux、Windows、Android 等多平台二進位制包。

llama.cpp releasesAI 評分46

llama.cpp 新版最佳化 Vulkan 上 MoE 重複專家的矩陣乘

llama.cpp 發布 b11554,Vulkan 後端改進了 MoE 推理中 mul_mat_id 對重複專家 id 的處理:不再逐個迴圈,而是在預計算階段統一處理。原本受限的 hoist row ids 最佳化現在預設開啟,會生成緊湊的 tile 描述列表、按需發射多個 tile,從而收緊 workgroup 數量上界,尾部執行緒可直接提前退出。

llama.cpp releasesAI 評分42

llama.cpp 回退 x86 上 FP16→FP32 的 F16C 最佳化,修復量化核心效能回退

llama.cpp 在 ggml-cpu 中撤銷 x86 上 FP16→FP32 的 F16C 內建轉換,恢復使用查詢表,只保留 FP32→FP16 走 F16C。此前 #30270 把兩種標量轉換都改為 F16C,但 Clang 20.1.8 會把該 intrinsic 編譯成 vpinsrw 合併進量化點積的活躍累加暫存器,導致迴圈序列化:估計每輪 19 週期對 4 週期,實測 Q8_0/Q4_0 的 MUL_MAT_ID 核心慢 45–65%。

llama.cpp releasesAI 評分45

llama.cpp Vulkan 後端支援 ggml src1 精度並調整累加器精度選擇

llama.cpp 建置 b11854 為 Vulkan 後端加入 ggml src1 精度支援,並更新累加器精度選擇邏輯。改動通過縮放處理 fp32 溢位,並修復 copy-to-fp16 啟用中的溢位問題;同時補充 ggml 精度查詢輔助函式、在 mul_mat 中增加檢查與測試,並統一命名為 acc_prec。此次建置仍覆蓋 macOS、Linux、Windows、Android 的 Vulkan、CUDA、ROCm、SYCL、OpenVINO 等後端二進位制。