täkÅFormal: Enabling Robust Software for Programmable Memory Hierarchies (Extended Version)
arXiv:2605.04172
Abstract
Accelerators provide large performance and energy-efficiency benefits, but can significantly change the hardware-software interface. The täkÅ programmable memory hierarchy accelerates data movement by enabling programmers to run user-defined callback functions triggered by cache misses, evictions, and writebacks. However, it also leads to drastically increased complexity and counterintuitive outcomes. In response, we develop an ISA-level memory consistency model (MCM) for täkÅ that captures the semantics of its operation, and we show how it enables programmers to formally reason about their täkÅ programs. We also prove the soundness of this ISA-level MCM by constructing a detailed täkÅ implementation model and verifying that all executions of the implementation model are allowed by our ISA-level MCM. Along the way, we discover useful insights about microarchitectural modeling and verification that are applicable to hardware in general. This is the extended version of the ISCA 2026 paper "täkÅFormal: Enabling Robust Software for Programmable Memory Hierarchies". This version adds material on additional litmus tests to Section V to further explore the programmability of täkÅ using our ISA-level MCM.
19 pages, 18 Figures. Conference Version of Paper to be published at ISCA 2026