Studying inter-core data reuse in multicores

Yuanrui Zhang, Mahmut Kandemir, Taylan Yemliha

Research output: Chapter in Book/Report/Conference proceedingConference contribution

13 Scopus citations

Abstract

Most of existing research on emerging multicore machines focus on parallelism extraction and architectural level optimizations. While these optimizations are critical, complementary approaches such as data locality enhancement can also bring significant benefits. Most of the previous data locality optimization techniques have been proposed and evaluated in the context of single core architectures. While one can expect these optimizations to be useful for multicore machines as well, multicores present further opportunities due to shared on-chip caches most of them accommodate. In order to optimize data locality targeting multicore machines however, the first step is to understand data reuse characteristics of multithreaded applications and potential benefits shared caches can bring. Motivated by these observations, we make the following contributions in this paper. First, we give a definition for inter-core data reuse and quantify it on multicores using a set of ten multithreaded application programs. Second, we show that neither on-chip cache hierarchies of current multicore architectures nor state-of-the-art (single-core centric) code/data optimizations exploit available inter-core data reuse in multithreaded applications. Third, we demonstrate that exploiting all available inter-core reuse could boost overall application performance by around 21.3% on average, indicating that there is significant scope for optimization. However, we also show that trying to optimize for inter-core reuse aggressively without considering the impact of doing so on intra-core reuse can actually perform worse than optimizing for intra-core reuse alone. Finally, we present a novel, compiler-based data locality optimization strategy for multicores that balances both intercore and intra-core reuse optimizations carefully to maximize benefits that can be extracted from shared caches. Our experiments with this strategy reveal that it is very effective in optimizing data locality in multicores.

Original languageEnglish (US)
Title of host publicationSIGMETRICS'11 - Proceedings of the 2011 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems
PublisherAssociation for Computing Machinery
Pages25-36
Number of pages12
Volume39
Edition1 SPEC. ISSUE
ISBN (Print)9781450302623
DOIs
StatePublished - 2011
Event2011 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems, SIGMETRICS 2011 - San Jose, United States
Duration: Jun 7 2011Jun 11 2011

Conference

Conference2011 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems, SIGMETRICS 2011
Country/TerritoryUnited States
CitySan Jose
Period6/7/116/11/11

All Science Journal Classification (ASJC) codes

  • Software
  • Hardware and Architecture
  • Computer Networks and Communications

Fingerprint

Dive into the research topics of 'Studying inter-core data reuse in multicores'. Together they form a unique fingerprint.

Cite this