A Survey: Software-Managed On-Chip Memories

keywords: Cache memory, memory management, optimization, software engineering, system software
Processors are unable to achieve significant gains in speed using the conventional methods. For example increasing the clock rate increases the average access time to on-chip caches which in turn lowers the average number of instructions per cycle of the processor. On-chip memory system will be the major bottleneck in future processors. Software-managed on-chip memories (SMCs) are on-chip caches where software can explicitly read and write some or all of the memory references within a block of caches. This paper footnoteThe work presented in this paper is an expansion of the authors' previously published work in the conference paper citeSMC-HPCS-10, and was carried out when the first author was a Ph.D. student in the Department of Computer Science at University of Victoria. analyzes the current trends for optimizing the use of these SMCs. We separate and compare these trends based on general classifications developed during our study. The paper not only serves as a collection of recent references, information and classifications for easy comparison and analysis but also as a motivation for improving the SMC management framework for embedded systems. It will also make a first step towards making them useful for general purpose multicore processors.
mathematics subject classification 2000: 68-02, 68N01, 68N20, 68M01, break 68M07, 68M14, 68U99
reference: Vol. 34, 2015, No. 5, pp. 1168–1200