<!-- llms-explorer concept facts · https://llms-explorer.com/tree/metal-flash-attention-k-type-v-type-constraint/ · pack 2026-10-05 · ~195 tokens -->

# Metal flash attention K.type==V.type constraint

> Already covered: llama.cpp Metal FLASH_ATTN_EXT requires src[1]->type == src[2]->type (issue #25900), so K and V cache types must match for the fused kernel; the open question whether mixed pairs run unfused is unresolved.

Parent: [Mac local LLMs: KV cache sizing and quantization](https://llms-explorer.com/tree/mac-local-llms-kv-cache-sizing-and-quantization/) · 1 facets · 1 facts · page: https://llms-explorer.com/tree/metal-flash-attention-k-type-v-type-constraint/

## Facts

- Already covered: llama.cpp Metal FLASH_ATTN_EXT requires src[1]->type == src[2]->type (issue #25900), so K and V cache types must match for the fused kernel; the open question whether mixed pairs run unfused is unresolved. — source: `asserted`
