llama.cpp 的 OpenCL 後端新增 IM2COL_3D 支援
llama.cpp 建置 b11797 為 ggml-opencl 後端加入 IM2COL_3D 支援,讓 OpenCL 路徑可以處理三維卷積的 im2col 展開。同一提交還統一了 kernel 與 host 端的資料型別,並修復了舊款 Adreno GPU 的相容問題;該改動由高通工程師參與提交。
原標題:b11797
閱讀原文
| 評分 | 42 / 35(平均 38,門檻 60) |
|---|---|
| 狀態 | 未入選 |
原文
相關報導
llama.cpp b11560 為 Hexagon NPU 新增 IM2COL_3D 支援
llama.cpp 建置 b11560 為 Hexagon NPU 後端新增 IM2COL_3D 支援,並把 hex-im2col 核心重寫為規範的 DMA 雙緩衝流水線,去掉除法運算與低效的 fp16 轉換,同時將 kernel_params 與 VTCM 佈局預計算移到 host 側、支援非連續檢視。該系列提交由 OpenCode 輔助完成,共同作者為高通的 Max Krasnyansky。
llama.cpp 的 OpenCL 後端新增 i32 GET_ROWS 與 i32/f32 複製支援
llama.cpp 建置 b11740 為 OpenCL 後端加入了 i32 型別的 GET_ROWS 行讀取,以及 i32 與 f32 之間的複製轉換(PR #30756)。這一版同時發布了 macOS(Apple Silicon/Intel)、iOS、Android、Windows、Linux 的預編譯包,覆蓋 CPU、Vulkan、CUDA 12/13、ROCm 10.0、OpenVINO、SYCL 等後端。
llama.cpp 為 OpenCL 後端加入 Adreno 深度卷積
llama.cpp 建置 b11827 在 OpenCL 後端新增 depthwise conv2d(深度卷積)支援,並針對 Adreno GPU 做了適配,可讓部分卷積類模型在驍龍 Adreno GPU 上以 OpenCL 加速執行。該改動還提到改用本地 program、引數改用有符號型別,貢獻者來自高通。
llama.cpp 為 OpenCL 後端加入 Q2_K 量化支援
llama.cpp 建置 b11873 為 OpenCL 後端加入了 Q2_K 量化的初步支援,重點面向驍龍 Adreno GPU。新增 mul_mv_q2_k_f32、q2_k 的 SOA mv 與 tiled mm kernel,並針對 Adreno 補充 noshuffle gemm/gemv 與 dp4a gemm 後完成調優,高通工程師參與共同提交。
llama.cpp 為 OpenCL 新增 cooperative-k dp4a GEMM
llama.cpp 建置 b11741 在 OpenCL 後端為 q4_0、q4_k、q6_k 三種量化格式加入 cooperative-k dp4a GEMM,並修復對齊問題。這意味著在 OpenCL 上執行這些 4bit、6bit 量化模型的裝置可以用上新的矩陣乘實現。該版本同時更新了 macOS、Linux、Windows、Android 多平台建置,覆蓋 CUDA 12/13、ROCm 10.0、Vulkan、SYCL 等後端。