Automated empirical tuning of scientific codes for performance and power consumption

  • Authors:
  • Shah Faizur Rahman;Jichi Guo;Qing Yi

  • Affiliations:
  • Univ. of Texas at San Antonio, TX;Univ. of Texas at San Antonio, TX;Univ. of Texas at San Antonio, TX

  • Venue:
  • Proceedings of the 6th International Conference on High Performance and Embedded Architectures and Compilers
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Automatic empirical tuning of compiler optimizations has been widely used to achieve portable high performance for scientific applications. However, as power dissipation becomes increasingly important in modern architecture design, few have attempted to empirically tune optimization configurations to reduce the power consumption of applications. We provide an automated empirical tuning framework that can be configured to optimize for both performance and energy efficiency. In particular, we extensively parameterize the configuration of a large number of compiler optimizations, including loop parallelization, blocking, unroll-and-jam, array copying, scalar replacement, strength reduction, and loop unrolling. We then use hardware counters combined with elapsed time to estimate both the performance and the power consumption of differently optimized code to automatically discover desirable configurations for these optimizations. We use a power meter to verify our tuning results on two multi-core computers and show that our approach can effectively achieve a balanced performance and energy efficiency on modern CMP machines.