Dynamic Allocation of SPM Based on Time-Slotted Cache Conflict Graph for System Optimization

Jianping WU  Ming LING  Yang ZHANG  Chen MEI  Huan WANG  

IEICE TRANSACTIONS on Information and Systems   Vol.E95-D   No.8   pp.2039-2052
Publication Date: 2012/08/01
Online ISSN: 1745-1361
DOI: 10.1587/transinf.E95.D.2039
Print ISSN: 0916-8532
Type of Manuscript: PAPER
Category: Computer System
time-slotted cache conflict graph,  SPM controller,  energy optimization,  dynamic SPM allocation strategy,  

Full Text: PDF(2.8MB)>>
Buy this Article

This paper proposes a novel dynamic Scratch-pad Memory allocation strategy to optimize the energy consumption of the memory sub-system. Firstly, the whole program execution process is sliced into several time slots according to the temporal dimension; thereafter, a Time-Slotted Cache Conflict Graph (TSCCG) is introduced to model the behavior of Data Cache (D-Cache) conflicts within each time slot. Then, Integer Nonlinear Programming (INP) is implemented, which can avoid time-consuming linearization process, to select the most profitable data pages. Virtual Memory System (VMS) is adopted to remap those data pages, which will cause severe Cache conflicts within a time slot, to SPM. In order to minimize the swapping overhead of dynamic SPM allocation, a novel SPM controller with a tightly coupled DMA is introduced to issue the swapping operations without CPU's intervention. Last but not the least, this paper discusses the fluctuation of system energy profit based on different MMU page size as well as the Time Slot duration quantitatively. According to our design space exploration, the proposed method can optimize all of the data segments, including global data, heap and stack data in general, and reduce the total energy consumption by 27.28% on average, up to 55.22% with a marginal performance promotion. And comparing to the conventional static CCG (Cache Conflicts Graph), our approach can obtain 24.7% energy profit on average, up to 30.5% with a sight boost in performance.