Vacuum packing: Extracting hardware-detected program phases for post-link optimization

Ronald D. Barnes, Erik M. Nystrom, Matthew C. Merten, Wen-Mei W Hwu

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

Abstract

This paper presents Vacuum Packing, a new approach to profile-based program optimization. Instead of using traditional aggregate or summarized execution profile weights, this approach uses a transparent hardware profiler to automatically detect execution phases and record branch profile information for each new phase. The code extraction algorithm then produces code packages that are specially formed for their corresponding phases. The algorithm compensates for the incomplete and often incoherent branch profile information that arises due to the nature of hardware profilers. The technique avoids unnecessary code replication by focusing on hot code, making efficient connections between the original code and the new code, linking code packages at select points to facilitate phase transitions, and providing a platform for efficient optimization. We demonstrate that using a concise set of profile information from a hardware profiler, we can generate code packages, specialized for each phase of execution, that capture more than 80% of the average total program execution. We further show that the approach is very effective in extracting code regions that capture the phasing behavior of programs, that the code size increase is moderate, and that the code regions benefit from sample optimizations.

Original languageEnglish (US)
Title of host publicationProceedings - 35th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2002
PublisherIEEE Computer Society
Pages233-244
Number of pages12
ISBN (Electronic)0769518591
DOIs
StatePublished - Jan 1 2002
Event35th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2002 - Istanbul, Turkey
Duration: Nov 18 2002Nov 22 2002

Publication series

NameProceedings of the Annual International Symposium on Microarchitecture, MICRO
Volume2002-January
ISSN (Print)1072-4451

Other

Other35th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2002
CountryTurkey
CityIstanbul
Period11/18/0211/22/02

Keywords

  • Aggregates
  • Computer architecture
  • Data mining
  • Emulation
  • Java
  • Joining processes
  • Libraries
  • Packaging
  • Phase detection
  • Reliability engineering

ASJC Scopus subject areas

  • Hardware and Architecture

Fingerprint Dive into the research topics of 'Vacuum packing: Extracting hardware-detected program phases for post-link optimization'. Together they form a unique fingerprint.

  • Cite this

    Barnes, R. D., Nystrom, E. M., Merten, M. C., & Hwu, W-M. W. (2002). Vacuum packing: Extracting hardware-detected program phases for post-link optimization. In Proceedings - 35th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2002 (pp. 233-244). [1176253] (Proceedings of the Annual International Symposium on Microarchitecture, MICRO; Vol. 2002-January). IEEE Computer Society. https://doi.org/10.1109/MICRO.2002.1176253