Skip to content

b12274

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Nov 02:52
202c1a2

llama : Add FP8 KV-cache support (#28392)

  • Add FP8 KV-cache support

  • Add tests for scaled, FP8 KV-cache to test-backend-ops

  • Fix get_*_scale mapping and dequnatize FP8 also before rope shift

  • Normalizes cache-scale names independently of projection layout.

While fused KQV is currently impractival for non-shared scales, this is
an improvement for future use regardless

  • Enable Gemma 4 Assistant with FP8 by storing and fetching scale ptrs

  • Update comment wording

  • Move E2E FP8 KV cache tests to test-llama-archs

They belong there as they are not just a test for ggml's backend ops

  • Increase support surface, remove seed

  • make scaled kv generic

  • Fix CI failings for test-kv-cache

https://github.com/ggml-org/llama.cpp/actions/runs/38718763447/job/116367842578?pr=28392

  • CI: execute kv-cache-scale tests

  • exclude fp8-kv tests from OpenVINO

  • Fix linting errors of test_kv_cache_scales

  • Disable kv-ffload=false + multi-GPU tests for FP8

See https://github.com/ggml-org/llama.cpp/actions/runs/38952722084/job/117148353699?pr=28413

  • Adjust test label for test-kv-cache.cpp

  • Fix conflict-resolution mistakes in test-kv-cache.cpp

https://github.com/ggml-org/llama.cpp/actions/runs/40554674463/job/122367426461?pr=28392

  • Move KV tests to test-fp8.cpp

#27512 (comment)

  • Remove tmp file for test-kv-cache-scales.py on Windows as well

  • Fix fp8 kv cache test by population kv_source_impl

  • Exclude models that consume KV cache directly

  • Remove obsolete comment

  • Allow BF16 scales as well for KV cache

  • Rename *_cache_scale to *_cache_s

#28392 (comment)

  • Move is_type_scaled() to llama-kv-cache.cpp

Website:

Attestations:

macOS/iOS:

Linux:

Android:

Windows:

openEuler:

  • DISABLED
  • openEuler x86 (310p)
  • openEuler x86 (910b, ACL Graph)
  • openEuler aarch64 (310p)
  • openEuler aarch64 (910b, ACL Graph)

UI: