<!-- llms-explorer concept facts · https://llms-explorer.com/tree/metal-pipeline-state-caching-and-kernel-dispatch-bubbles/ · pack 2026-09-30 · ~298 tokens -->

# Metal Pipeline State Caching and Kernel Dispatch Bubbles

> Source-anchored research for Metal Pipeline State Caching and Kernel Dispatch Bubbles. Run status: COMPLETED.

Parent: [Local Inference Micro-Architectures: Signaling, Quantization Superblocks, and Kernel Pipeline Scheduling](https://llms-explorer.com/tree/inference-microarchitectures-and-kernel-pipelines/) · 2 facets · 2 facts · page: https://llms-explorer.com/tree/metal-pipeline-state-caching-and-kernel-dispatch-bubbles/

## Measurements and reference values

- Synchronously blocking CPU execution on MTLCommandBuffer waitUntilCompleted() prevents overlapping CPU dispatch with GPU execution, causing up to 25% throughput degradation on small models. (high confidence) — [source](https://developer.apple.com/documentation/metal/gpu_compilation/building_a_shader_library_offline)

## Facts and statements

- Runtime compilation of Metal compute shaders creates hitches during initial token generation; caching compiled pipeline states in an MTLBinaryArchive eliminates shader compilation latency. (high confidence) — [source](https://developer.apple.com/documentation/metal/gpu_compilation/building_a_shader_library_offline)
