A TRRIP Down Memory Lane: Temperature-Based Re-Reference Interval Prediction For Instruction Caching
Henry Kao, Nikhil Sreekumar, Prabhdeep Singh Soni, Ali Sedaghati, Fang Su, Bryan Chan, Maziar Goudarzi, Reza Azimi
现代移动CPU软件对传统的指令缓存替换策略提出了挑战,因为它们复杂的运行时行为导致执行同一指令之间的高重用距离。 移动代码通常遭受CPU前端的大量失速,从而耗尽了其余的CPU资源。 由于电源和区域限制,这些应用程序的复杂性及其代码占用率预计将以比可用的片上内存更快的速度增长,因此传统的以硬件为中心的管理指令缓存的方法不足。 我们提出了一种名为TRRIP(基于温度的重义间隔预测)的新型软件硬件共同设计方法,使编译器能够根据“温度”(热/冷)分析,分类和转换代码,并通过基于使用代码页属性的明确界定的OS接口向硬件提供代码温度信息的摘要。 TRRIP的轻量级硬件扩展使用代码温度属性来优化指令缓存替换策略,从而降低热码的驱逐率。 TRRIP旨在实用且可采用的真实移动系统,这些系统对软件和硬件组件都有严格的功能要求。 TRRIP可以将指令的L2 MPKI降低26.5%,从而降低3.9%的地理均值速度,除了RRIP缓存替换运行已经使用PGO优化的移动代码之外。
Modern mobile CPU software pose challenges for conventional instruction cache replacement policies due to their complex runtime behavior causing high reuse distance between executions of the same instruction. Mobile code commonly suffers from large amounts of stalls in the CPU frontend and thus starvation of the rest of the CPU resources. Complexity of these applications and their code footprint are projected to grow at a rate faster than available on-chip memory due to power and area constraint...