Optimizing data locality using array tiling

Wei Ding, Yuanrui Zhang, Jun Liu, Mahmut Kandemir

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

1 Scopus citations

Abstract

Data transformation is one of the key optimizations in maximizing cache locality. Traditional data transformation strategies employ linear data layouts, e.g., row-major or column-major, for multidimensional arrays. Although a linear layout matches the linear memory space well in most cases, it can only optimize for self-spatial locality for individual references. In this work, we propose a novel data layout transformation framework that is able to determine a tiled layout for each array in an application program. Tiled layout can exploit the group-spatial locality among different references and improve cache line utilization. In our strategy, the data elements accessed by different references in one loop iteration are placed into a tile and fetched into the same cache line at runtime. This helps minimizing conflict misses in caches. We evaluated our data layout transformation framework using 30 benchmarks on a commercial multicore machine. The experimental results show that our approach outperforms state-of-the-art data transformation strategies and works well with large core counts.

Original languageEnglish (US)
Title of host publication2011 IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2011
Pages142-149
Number of pages8
DOIs
StatePublished - Dec 1 2011
Event2011 IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2011 - San Jose, CA, United States
Duration: Nov 7 2011Nov 10 2011

Other

Other2011 IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2011
Country/TerritoryUnited States
CitySan Jose, CA
Period11/7/1111/10/11

All Science Journal Classification (ASJC) codes

  • Software
  • Computer Science Applications
  • Computer Graphics and Computer-Aided Design

Fingerprint

Dive into the research topics of 'Optimizing data locality using array tiling'. Together they form a unique fingerprint.

Cite this