]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commit
kv-cache : add SWA support (#13194)
authorGeorgi Gerganov <redacted>
Tue, 20 May 2025 05:05:46 +0000 (08:05 +0300)
committerGitHub <redacted>
Tue, 20 May 2025 05:05:46 +0000 (08:05 +0300)
commite298d2fbd082a52c0f6ed02729f94e9bf630cf17
tree9fafda7f1caf7f532e9777cf07b8d987b837d471
parentf0adb80bf7c2c0d80abb04f4533b5513622d9964
kv-cache : add SWA support (#13194)

* kv-cache : prepare for SWA

ggml-ci

* kv-cache : initial iSWA implementation

ggml-ci

* kv-cache : rework error recovery logic

ggml-ci

* models : fix Phi-3 SWA parameters

ggml-ci

* model : adjust Granite to rope factor changes

ggml-ci

* server : check if context can do shifts

ggml-ci

* iswa : for now, always enable shifts (experiment)

ggml-ci

* kv-cache : simplify SWA logic

ggml-ci

* kv-cache : apply defrag when we fail to find slots for the batch

ggml-ci

* llama : update docs about llama_decode

ggml-ci

* kv-cache : update warning logs when no space for the batch is available

ggml-ci

* llama : add llama_kv_self_seq_pos_min()

* kv-cache : keep track of partial SWA computes and print warnings

* server : disallow use cases involving partial SWA context

ggml-ci

* llama : add param to control SWA cache size

ggml-ci

* minor : clean-up

ggml-ci
15 files changed:
common/arg.cpp
common/common.cpp
common/common.h
include/llama.h
src/llama-context.cpp
src/llama-graph.cpp
src/llama-graph.h
src/llama-hparams.h
src/llama-kv-cache.cpp
src/llama-kv-cache.h
src/llama-memory.h
src/llama-model.cpp
src/llama-model.h
tools/llama-bench/llama-bench.cpp
tools/server/server.cpp