]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commit
opencl: split `ggml-opencl.cl` into multiple files and cleanup (#12886)
authorlhez <redacted>
Tue, 15 Apr 2025 19:26:00 +0000 (12:26 -0700)
committerGitHub <redacted>
Tue, 15 Apr 2025 19:26:00 +0000 (12:26 -0700)
commit80f19b41869728eeb6a26569957b92a773a2b2c6
treea6965cf9d7d96d5db524e0dac8ec98ddbe05a1ff
parentf8f820cc4dc37032d5375972ba904ce53043445d
opencl: split `ggml-opencl.cl` into multiple files and cleanup (#12886)

* opencl: refactor - split the kernel files

---------

Co-authored-by: Shangqing Gu <redacted>
* opencl: split more kernels into separate files

* opencl: specify subgroup size instead of querying it

* opencl: refine Adreno cl compiler version parsing

* opencl: skip some kernels not used by Adreno on old compilers

* opencl: refine logic for selecting Adreno kernels

* opencl: refine Adreno cl compiler version

* opencl: cleanup preprocessor for kernels

* opencl: consider Adreno CL compiler on Windows

* opencl: add final newline for `mul_mv_f16_f16.cl`

---------

Co-authored-by: Shangqing Gu <redacted>
47 files changed:
ggml/src/ggml-opencl/CMakeLists.txt
ggml/src/ggml-opencl/ggml-opencl.cpp
ggml/src/ggml-opencl/kernels/add.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/clamp.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/cpy.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/cvt.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/diag_mask_inf.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/gelu.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/gemv_noshuffle.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/gemv_noshuffle_general.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/get_rows.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/ggml-opencl.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_cvt.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_gemv_noshuffle.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_gemv_noshuffle_general.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_im2col.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_mm.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_mul_mat_Ab_Bi_8x4.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_transpose_16.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_transpose_32.cl [deleted file]
ggml/src/ggml-opencl/kernels/ggml-opencl_transpose_32_16.cl [deleted file]
ggml/src/ggml-opencl/kernels/im2col_f16.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/im2col_f32.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mat_Ab_Bi_8x4.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_f16_f16.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_f16_f32.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_f16_f32_1row.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_f16_f32_l4.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_f32_f32.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_q4_0_f32.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_q4_0_f32_1d_16x_flat.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_q4_0_f32_1d_8x_flat.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_q4_0_f32_8x_flat.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_q4_0_f32_v.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/mul_mv_q6_k.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/norm.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/relu.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/rms_norm.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/rope.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/scale.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/silu.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/softmax_4_f16.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/softmax_4_f32.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/softmax_f16.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/softmax_f32.cl [new file with mode: 0644]
ggml/src/ggml-opencl/kernels/transpose.cl [new file with mode: 0644]