]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commit
SYCL: Implement few same quantized type copy kernels (#13739)
authorAkarshan Biswas <redacted>
Sat, 7 Jun 2025 13:28:20 +0000 (18:58 +0530)
committerGitHub <redacted>
Sat, 7 Jun 2025 13:28:20 +0000 (18:58 +0530)
commit228f34c9ceefa3ea4f4d6933edd858121e8106cb
treeaa96a240440291653570dcaf247b0f46755e120f
parent0974ad7a7cd4bca846b15c484ff3be890135a52c
SYCL: Implement few same quantized type copy kernels (#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