Array regrouping on CMP with non-uniform cache sharing

Yunlian Jiang, Eddy Z. Zhang, Xipeng Shen, Yaoqing Gao, Roch Archambault

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

2 Scopus citations


Array regrouping enhances program spatial locality by interleaving elements of multiple arrays that tend to be accessed closely. Its effectiveness has been systematically studied for sequential programs running on unicore processors, but not for multithreading programs on modern Chip Multiprocessor (CMP) machines. On one hand, the processor-level parallelism on CMP intensifies memory bandwidth pressure, suggesting the potential benefits of array regrouping for CMP computing. On the other hand, CMP architectures exhibit extra complexities-especially the hierarchical, heterogeneous cache sharing among hyperthreads, cores, and processors-that impose new challenges to array regrouping. In this work, we initiate an exploration to the new opportunities and challenges. We propose cache-sharing-aware reference affinity analysis for identifying data affinity in multithreading applications. The analysis consists of affinity-guided thread scheduling and hierarchical reference-vector merging, handles cache sharing among both hyperthreads and cores, and offers hints for array regrouping and the avoidance of false sharing. Preliminary experiments demonstrate the potential of the techniques in improving locality of multithreading applications on CMP with various pitfalls avoided.

Original languageEnglish (US)
Title of host publicationLanguages and Compilers for Parallel Computing - 23rd International Workshop, LCPC 2010, Revised Selected Papers
Number of pages14
StatePublished - 2011
Externally publishedYes
Event23rd International Workshop on Languages and Compilers for Parallel Computing, LCPC 2010 - Houston, TX, United States
Duration: Oct 7 2010Oct 9 2010

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume6548 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Other23rd International Workshop on Languages and Compilers for Parallel Computing, LCPC 2010
CountryUnited States
CityHouston, TX

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • Computer Science(all)

Fingerprint Dive into the research topics of 'Array regrouping on CMP with non-uniform cache sharing'. Together they form a unique fingerprint.

Cite this