• DocumentCode
    3135272
  • Title

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

  • Author

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

  • Author_Institution
    Center for Reliable & High Performance Comput., Illinois Univ., Urbana, IL, USA
  • fYear
    2002
  • fDate
    2002
  • Firstpage
    233
  • Lastpage
    244
  • 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.
  • Keywords
    optimising compilers; Vacuum Packing; application profiler; branch profile; code replication; code segments; hot code; program optimization; static compilation; transformation platform; usage patterns; Aggregates; Computer architecture; Data mining; Emulation; Java; Joining processes; Libraries; Packaging; Phase detection; Reliability engineering;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Microarchitecture, 2002. (MICRO-35). Proceedings. 35th Annual IEEE/ACM International Symposium on
  • ISSN
    1072-4451
  • Print_ISBN
    0-7695-1859-1
  • Type

    conf

  • DOI
    10.1109/MICRO.2002.1176253
  • Filename
    1176253