llama.cpp PR, Intel Battlemage에서 SYCL 커널 전환으로 양자화 KV 디코드 속도 최대 169% 향상
llama.cpp PR reports up to 169% faster quantized-KV decode at 118K context on Intel Battlemage from one SYCL kernel switch
핵심 요약
llama.cpp의 새로운 PR이 SYCL 커널 디스패치 최적화를 통해 긴 컨텍스트에서 양자화된 KV 캐시 디코드 성능을 대폭 개선했습니다.
- 성능 향상 — 양자화된 KV 캐시 디코드 시 TILE 커널을 사용하여 컨텍스트 길이에 따라 최대 169% 속도 개선함
- 기술적 변경 — SYCL FlashAttention 디스패치 로직을 수정하고 A/B 테스트를 위한 환경 변수를 추가함
- 검증 필요 — 현재 PR 상태이며 작성자 보고 수치 외에 독립적인 하드웨어 벤치마크 검증이 필요함
- 사용자 반응 — B70 사용자들은 실제 사용 환경에서 성능 개선을 체감하며 긍정적인 반응을 보임
llama.cpp의 새로운 PR(#26689)은 SYCL FlashAttention 디스패치 결정 방식을 미세하게 변경합니다.
양자화된 KV 캐시("q4_0" / "q8_0")를 사용할 때, 기존에는 디코드가 VEC 커널을 통해 전송되었습니다. 작성자의 Battlemage 테스트 시스템에서는 컨텍스트가 커질수록 해당 경로를 TILE로 전환하는 것이 훨씬 빠릅니다.
작성자가 보고한 결과 중 일부(MTP 비활성화):
- Qwen3.6-35B, q4_0 KV @ 118,784: 12.99 → 29.61 t/s (+127.9%)
- Qwen3.6-35B, q8_0 KV @ 118,784: 12.90 → 31.80 t/s (+146.5%)
- Gemma 4 12B, q4_0 KV @ 118,784: 5.06 → 13.59 t/s (+168.7%)
- Gemma 4 12B, q8_0 KV @ 118,784: 5.13 → 13.81 t/s (+168.7%)
단순히 118K라는 극단적인 지점에서만 그런 것은 아닙니다. 32K에서도 동일한 JIT 테스트 결과, 테스트된 Qwen/Gemma 구성에서 약 +42%에서 +74%의 성능 향상을 보였습니다.
흥미로운 점은 실제 아이디어가 매우 간단하다는 것입니다. 이 PR은 기본적으로 디스패치 게이트를 변경하여 양자화된 KV 디코드가 VEC를 강제로 거치지 않고 TILE을 선택하도록 하고, A/B 테스트가 가능하도록 "GGML_SYCL_FA_DECODE_KERNEL=vec|tile|auto" 옵션을 추가했습니다.
주의사항:
- PR은 현재 열려 있으며 병합되지 않음
- 대부분 작성자가 보고한 벤치마크 결과임
- 정확한 Battlemage GPU SKU가 PR에 명시되지 않음
- 양자화된 KV를 구체적으로 타겟팅하며, F16은 기존 디스패치를 유지함
- 118K MTP 테스트 하나는 17.65 → 20.14 t/s (+14.1%)로만 개선됨
- 백엔드 테스트는 4001/4001 통과했으나, 아직 독립적인 하드웨어 전수 조사는 없음
이 PR은 또한 Laguna-S-2.1 Discord 테스트에서 64K에서 +50%, 118K에서 +68%의 성능 향상을 보였다고 전하고 있지만, 저는 여전히 제대로 된 독립적인 결과를 보고 싶습니다.
B580이나 B70을 가지고 64K/118K에서 이를 재현할 수 있는 분 계신가요? 특히 MTP가 활성화된 상태에서도 이 엄청난 성능 향상이 유지되는지 궁금합니다.

