一句话:提出 TEMPO,利用页表访问触发对目标数据的 DRAM 行缓冲与片上缓存预取,以极低硬件开销提升内存性能。
现代大数据负载中 20-40% 的 DRAM 引用来自页表访问,且页表查找后 98%+ 会继续访问对应数据。本文提出 TEMPO,一种利用操作系统虚拟内存子系统的低开销硬件预取机制:在地址翻译触发页表查找时,预取页表项指向的数据至 DRAM 行缓冲和片上缓存。TEMPO 仅需对内存控制器做微小改动,无需修改 OS 或应用。评估显示其在增加不到 3% 面积的情况下,性能提升 10-30%,能耗降低 1-14%。
We propose translation-enabled memory prefetching optimizations or TEMPO, a low-overhead hardware mechanism to boost memory performance by exploiting the operating system's (OS) virtual memory subsystem. We are the first to make the following observations: (1) a substantial fraction (20-40%) of DRAM references in modern big- data workloads are devoted to accessing page tables; and (2) when memory references require page table lookups in DRAM, the vast majority of them (98%+) also look up DRAM for the subsequent data access. TEMPO exploits these observations to enable DRAM row-buffer and on-chip cache prefetching of the data that page tables point to. TEMPO requires trivial changes to the memory controller (under 3% additional area), no OS or application changes, and improves performance by 10-30% and energy by 1-14%.