]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commit
sycl: Add optional USM system allocations (llama/22526)
authorFrancois Dugast <redacted>
Wed, 17 Jun 2026 05:54:21 +0000 (07:54 +0200)
committerGeorgi Gerganov <redacted>
Fri, 19 Jun 2026 09:53:43 +0000 (12:53 +0300)
commitdd1a6ca897fb92a1367cc80254083aa76aed74e1
tree5cc2f09f13fefafb43204c92b572e28e26cfb1cb
parent694579182fb93188e18cf8ac68d213b112321dba
sycl: Add optional USM system allocations (llama/22526)

This introduces an optional feature to allocate large GPU buffers (≥ 1GB)
using USM system allocations if supported by the device. It allows using
buffers from the system allocator then letting the system manage memory
migrations between host and device as necessary.

This feature is disabled by default and requires the GGML_SYCL_USM_SYSTEM
environment variable to enable. If USM system allocations are not supported
by the device or the system, we fallback to regular allocations.

This feature can allow VRAM overcommit. For example, the test below fails
on B580 due to lack of memory for allocation, but it passes when enabling
USM system allocations:

  ./examples/sycl/test.sh -m Qwen3.5-27B-Q3_K_M.gguf -lv 4

Signed-off-by: Francois Dugast <redacted>
ggml/src/ggml-sycl/common.hpp
ggml/src/ggml-sycl/ggml-sycl.cpp