]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commit
SYCL: Implement few same quantized type copy kernels (llama/13739)
authorAkarshan Biswas <redacted>
Sat, 7 Jun 2025 13:28:20 +0000 (18:58 +0530)
committerGeorgi Gerganov <redacted>
Tue, 10 Jun 2025 09:40:33 +0000 (12:40 +0300)
commit489dc158a6337b5ed0c652d23b7a27ff8072d11b
tree53e096a31c14279db6f714d96790a62ba9a8a971
parentf0f5a9f7fb74a0b6a036b51a21b0054d225ffe7c
SYCL: Implement few same quantized type copy kernels (llama/13739)

* SYCL: Implement few same quantized type copy kernels

* Use memcpy for copying contiguous tensors

ggml-ci

* feat(sycl): add contiguous tensor copy support and device checks

Adds a memcpy path for contiguous tensors of the same type to optimize data transfer. Updates device support checks to recognize contiguous tensor operations, improving compatibility and performance.

* refactor: replace specific block copy functions with template

The changes replace multiple redundant block copy functions (e.g., cpy_block_q8_0_q8_0, cpy_block_q5_0_q5_0) with a single templated function cpy_blck_q_q. This reduces code duplication by using a generic template that works for any block type, improving maintainability while preserving the same functionality. The template is instantiated with specific block types (e.g., block_q8_0) where needed.

* Exclude BF16 support for COPY tensors for now
ggml-ci

* perf: adjust SYCL copy kernel block sizes for efficiency

Use ceil_div to ensure full element coverage and update nd_range parameters to better align with SYCL block sizes, improving parallelism and device utilization in copy operations.
ggml/src/ggml-sycl/cpy.cpp
ggml/src/ggml-sycl/ggml-sycl.cpp