Trace-Based data layout optimizations for multi-core processors

  • Authors:
  • Olga Golovanevsky;Alon Dayan;Ayal Zaks;David Edelsohn

  • Affiliations:
  • IBM Haifa Research Laboratory;IBM Haifa Research Laboratory;IBM Haifa Research Laboratory;IBM Watson Research Center

  • Venue:
  • HiPEAC'10 Proceedings of the 5th international conference on High Performance Embedded Architectures and Compilers
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

The focus of this paper is on cache-conscious data layout optimizations. Although these optimizations have already been adopted by industrial compilers, they were shown to be inefficient for multi-process applications on multi-core platforms. Such factors as asymmetric distribution of processes over hardware resources (cores, cpus or hardware threads), along with their temporal migrations, unpredictably influence optimization results. Herein we present a new methodology that extends classical data layout optimizations to support multi-core architectures. Based on data trace collection that reflects actual interleaving of data accesses, this method aims to improve spatial locality of the data, while mitigating potential false sharing events. Introduction of architectural characteristics into an analysis phase further increases the accuracy of data affinity estimation. Feasibility study of this method, applied to multi-process webserver lighttpd on Power5 machine, not only showed performance improvement, but also proved its suitability for incorporation into an industrial compiler.