]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commit
CUDA: refactor mmq, dmmv, mmvq (llama/7716)
authorJohannes Gäßler <redacted>
Wed, 5 Jun 2024 14:53:00 +0000 (16:53 +0200)
committerGeorgi Gerganov <redacted>
Sun, 16 Jun 2024 15:19:48 +0000 (18:19 +0300)
commite08c62149b8040619b4125c0bc4d9210906b9cf7
tree18da55885175a777785097e60a064cbe62edbaf3
parentabab4500facc7cf962f826a50a3ae07d9e3035ae
CUDA: refactor mmq, dmmv, mmvq (llama/7716)

* CUDA: refactor mmq, dmmv, mmvq

* fix out-of-bounds write

* struct for qk, qr, qi

* fix cmake build

* mmq_type_traits
110 files changed:
ggml-common.h
ggml-cuda.cu
ggml-cuda/common.cuh
ggml-cuda/dmmv.cu
ggml-cuda/mmq.cu
ggml-cuda/mmq.cuh
ggml-cuda/mmvq.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-f16-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-f16-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-f16-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-f16-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-f16-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-f16-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_0-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_0-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_0-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_0-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_0-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_0-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_1-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_1-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_1-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_1-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_1-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q4_1-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_0-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_0-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_0-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_0-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_0-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_0-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_1-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_1-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_1-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_1-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_1-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q5_1-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q8_0-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q8_0-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q8_0-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q8_0-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q8_0-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs128-q8_0-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs256-f16-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs64-f16-f16.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs64-f16-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs64-f16-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs64-f16-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs64-f16-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f16-instance-hs64-f16-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-f16-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-f16-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-f16-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-f16-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-f16-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-f16-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_0-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_0-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_0-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_0-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_0-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_0-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_1-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_1-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_1-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_1-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_1-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q4_1-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_0-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_0-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_0-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_0-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_0-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_0-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_1-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_1-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_1-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_1-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_1-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q5_1-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q8_0-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q8_0-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q8_0-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q8_0-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q8_0-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs128-q8_0-q8_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs256-f16-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs64-f16-f16.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs64-f16-q4_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs64-f16-q4_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs64-f16-q5_0.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs64-f16-q5_1.cu
ggml-cuda/template-instances/fattn-vec-f32-instance-hs64-f16-q8_0.cu
ggml-cuda/template-instances/fattn-wmma-f16-instance-kqfloat-cpb16.cu
ggml-cuda/template-instances/fattn-wmma-f16-instance-kqfloat-cpb32.cu
ggml-cuda/template-instances/fattn-wmma-f16-instance-kqhalf-cpb16.cu
ggml-cuda/template-instances/fattn-wmma-f16-instance-kqhalf-cpb32.cu
ggml-cuda/template-instances/fattn-wmma-f16-instance-kqhalf-cpb8.cu
ggml-cuda/template-instances/generate_cu_files.py
ggml-cuda/template-instances/mmq-instance-q2_k.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q3_k.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q4_0.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q4_1.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q4_k.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q5_0.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q5_1.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q5_k.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q6_k.cu [new file with mode: 0644]
ggml-cuda/template-instances/mmq-instance-q8_0.cu [new file with mode: 0644]
ggml-cuda/vecdotq.cuh