Phase-based Tuning for Better Utilization of Performance-Asymmetric Multicore Processors

By: Tyler Sondag and Hridesh Rajan

PDF Download Download Paper

Abstract

The latest trend towards performance asymmetry among cores on a single chip of a multicore processor is posing new challenges. For effective utilization of these performance-asymmetric multicore processors, code sections of a program must be assigned to cores such that the resource needs of code sections closely matches resource availability at the assigned core. Determining this assignment manually is tedious, error prone, and significantly complicates software development. To solve this problem, we contribute a transparent and fully-automatic process that we call phase-based tuning which adapts an application to effectively utilize performance-asymmetric multicores. Compared to the stock Linux scheduler we see a 36% average process speedup, while maintaining fairness and with negligible overheads.

ACM Reference

Sondag, T. and Rajan, H. 2011. Phase-based Tuning for Better Utilization of Performance-Asymmetric Multicore Processors. International Symposium on Code Generation and Optimization (CGO) (Apr. 2011).

BibTeX Reference

@inproceedings{sondag2011phase-b,
  author = {Tyler Sondag and Hridesh Rajan},
  title = {Phase-based Tuning for Better Utilization of Performance-Asymmetric Multicore Processors},
  booktitle = {International Symposium on Code Generation and Optimization (CGO)},
  location = {Chamonix, France},
  month = {April},
  year = {2011},
  entrysubtype = {conference},
  abstract = {
    The latest trend towards performance asymmetry among cores on a single chip of
    a multicore processor is posing new challenges. For effective utilization of
    these performance-asymmetric multicore processors, code sections of a program
    must be assigned to cores such that the resource needs of code sections
    closely matches resource availability at the assigned core. Determining this
    assignment manually is tedious, error prone, and significantly complicates
    software development. To solve this problem, we contribute a transparent and
    fully-automatic process that we call phase-based tuning which adapts an
    application to effectively utilize performance-asymmetric multicores. Compared
    to the stock Linux scheduler we see a 36% average process speedup, while
    maintaining fairness and with negligible overheads.
  }
}