We recently published Every Walk’s a Hit: Making Page Walks Single-Access Cache Hits [1] at ASPLOS 2022 in Lausanne. This paper was the result of an excellent collaboration between Chang Hyun Park and David Black-Schaffer at Uppsala University, and Ilias Vougioukas and Andreas Sandberg at Arm.

In the paper, we describe two different techniques to improve translation. The first techniques reduces the depth of the page table can be reduced by merging multiple levels. This effectively extends the large page abstraction to tables within the table itself. The second technique builds on the observation that high TLB miss rates and high data miss rates are usually correlated. This allows us to bias the cache replacement policy to keep page table fragments instead of data without increasing the data miss rate. By keeping more page table fragments in the cache, we decrease the average translation latency.

Ilias described the basics of translation and how we merge multiple levels in a blog post on the Arm Research Blog. The full paper can be downloaded for free from the ACM Digital Library.

  1. C. H. Park, I. Vougioukas, A. Sandberg, and D. Black-Schaffer, “Every Walk’s a Hit: Making Page Walks Single-Access Cache Hits,” in Proc. Internationla Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), Feb. 2022, pp. 128–141. doi: 10.1145/3503222.3507718. PDF