一种基于随机采样的SPM管理机制
A Random Sampling Based SPM Management Mechanism
-
摘要: 嵌入式系统对于功耗和面积具有很高的要求.便签存储器(scratchpad memory, SPM)与同等容量Cache相比具有能耗低、片上面积小等优点,现已成为嵌入式处理器中广泛采用的片上存储器.高效的SPM管理策略对于降低系统功耗具有重要意义.传统的SPM管理策略通过编译器采用软件方式进行.随着移动设备及网络互联设备的发展,嵌入式程序的部署方式已趋于多样化,致使传统基于程序特征分析(profiling)的SPM管理方式在某些方面存在局限.提出了一种软硬件结合的基于随机采样(random sampling)的动态SPM管理策略,通过实时监控程序访存特征等手段在运行时动态预测核心工作集(core working set).该方法区别于传统方法之处在于无需依赖profiling信息和编译器进行SPM管理,而通过跟踪程序运行时访存动态特征指导SPM管理.实验表明,该方法可以充分发挥SPM在功耗、面积等方面的优势;通过与一种经典的SPM管理策略相比,所提出的方法在保证系统性能不降低的前提下,提高了SPM管理的灵活性、通用性.Abstract: Energy and area of on-chip memory in embedded systems are highly regarded. Scratchpad memory(SPM) has been widely adopted as an alternative to the L1 Cache in many modern embedded processors due to its advantages on power and area efficiency. An effective SPM management strategy is of great significance for the whole system performance. Previous approaches handled the SPM management at compile time in a software manner. The development of mobile technology and the Internet diversifies the deployment of the embedded applications, which incurs huge constraints for previous SPM management. This paper proposes a new dynamic SPM management (DSPMM) strategy based on random sampling. The novelty of this method lies in its co-design of hardware and software, which can predict the most frequently accessed data items by monitoring the memory access pattern at runtime. Differing from the traditional profiling-driven and compiler-based methods, DSPMM depends neither on the assistance of the compiler, nor the profiling information beforehand. Experimental results show that, DSPMM can fully utilize the advantages of SPM on energy and area compared with the traditional cache systems. Even higher flexibility and generality can be achieved in contrast with the classical profiling-driven SPM management methods, without severe performance decrement.