DocumentCode
509995
Title
Optimizing shared cache behavior of chip multiprocessors
Author
Kandemir, Mahmut ; Muralidhara, Sai Prashanth ; Narayanan, Sri Hari Krishna ; Zhang, Yuanrui ; Ozturk, Ozcan
Author_Institution
Pennsylvania State Univ., University Park, PA, USA
fYear
2009
fDate
12-16 Dec. 2009
Firstpage
505
Lastpage
516
Abstract
One of the critical problems associated with emerging chip multiprocessors (CMPs) is the management of on-chip shared cache space. Unfortunately, single processor centric data locality optimization schemes may not work well in the CMP case as data accesses from multiple cores can create conflicts in the shared cache space. The main contribution of this paper is a compiler directed code restructuring scheme for enhancing locality of shared data in CMPs. The proposed scheme targets the last level shared cache that exist in many commercial CMPs and has two components, namely, allocation, which determines the set of loop iterations assigned to each core, and scheduling, which determines the order in which the iterations assigned to a core are executed. Our scheme restructures the application code such that the different cores operate on shared data blocks at the same time, to the extent allowed by data dependencies. This helps to reduce reuse distances for the shared data and improves on-chip cache performance. We evaluated our approach using the Splash-2 and Parsec applications through both simulations and experiments on two commercial multi-core machines. Our experimental evaluation indicates that the proposed data locality optimization scheme improves inter-core conflict misses in the shared cache by 67% on average when both allocation and scheduling are used. Also, the execution time improvements we achieve (29% on average) are very close to the optimal savings that could be achieved using a hypothetical scheme.
Keywords
cache storage; microprocessor chips; multiprocessing systems; optimisation; processor scheduling; chip multiprocessors; compiler directed code restructuring scheme; data locality optimization scheme; loop iterations; multiple cores; optimization; scheduling; shared cache behavior; Algorithm design and analysis; Computer languages; Costs; Energy consumption; Job shop scheduling; Laboratories; Manufacturing; Permission; Processor scheduling; Yarn; Algorithm; Design; Experimentation; Performance;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 2009. MICRO-42. 42nd Annual IEEE/ACM International Symposium on
Conference_Location
New York, NY
ISSN
1072-4451
Print_ISBN
978-1-60558-798-1
Type
conf
Filename
5375447
Link To Document