• DocumentCode
    2745975
  • Title

    Ispike: a post-link optimizer for the Intel® Itanium® architecture

  • Author

    Luk, Chi-Keung ; Muth, Robert ; Patil, Harish ; Cohn, Robert ; Lowney, Geoff

  • Author_Institution
    Massachusetts Microprocessor Design Center, Intel Corp., USA
  • fYear
    2004
  • fDate
    20-24 March 2004
  • Firstpage
    15
  • Lastpage
    26
  • Abstract
    Ispike is a post-link optimizer developed for the Intel® Itanium Processor Family (IPF) processors. The IPF architecture poses both opportunities and challenges to post-link optimizations. IPF offers a rich set of performance counters to collect detailed profile information at a low cost, which is essential to post-link optimization being practical. At the same time, the predication and bundling features on IPF make post-link code transformation more challenging than on other architectures. In Ispike, we have implemented optimizations like code layout, instruction prefetching, data layout, and data prefetching that exploit the IPF advantages, and strategies that cope with the IPF-specific challenges. Using SPEC CINT2000 as benchmarks, we show that Ispike improves performance by as much as 40% on the ltanium®2 processor, with average improvement of 8.5% and 9.9% over executables generated by the Intel® Electron compiler and by the Gcc compiler, respectively. We also demonstrate that statistical profiles collected via IPF performance counters and complete profiles collected via instrumentation produce equal performance benefit, but the profiling overhead is significantly lower for performance counters.
  • Keywords
    benchmark testing; computer architecture; instruction sets; operating systems (computers); optimising compilers; program control structures; storage management; Gcc compiler; Intel® Electron compiler; Intel® Itanium® architecture; Ispike; Itanium Processor Family; SPEC CINT2000; code layout; code transformation; data layout; data prefetching; instruction prefetching; performance counters; post-link optimizer; statistical profiles; Computer architecture; Counting circuits; Design optimization; Electrons; Instruments; Linux; Monitoring; Prefetching; Service oriented architecture; Software performance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Code Generation and Optimization, 2004. CGO 2004. International Symposium on
  • Print_ISBN
    0-7695-2102-9
  • Type

    conf

  • DOI
    10.1109/CGO.2004.1281660
  • Filename
    1281660