HyperLink   A Systematic Approach to Delivering Instruction-Level Parallelism in EPIC Systems.
   
Publication Year:
  2005
Authors
  John W. Sias
   
Published:
  PhD. Dissertation, Department of Electrical and Computer Engineering, University of Illinois, Urbana IL, 2005
   
Abstract:

Computer systems designed under the explicitly parallel instruction computing (EPIC) paradigm rely extensively on compiler technology to deliver the instruction-level parallelism (ILP) required for them to achieve high levels of performance. While manifold techniques have been proposed in the literature for delivering such parallelism, this dissertation is unique in integrating and applying a comprehensive suite of techniques, embodied in the IMPACT Research Compiler, to a concrete system, comprised of the SPEC CINT2000 benchmarks and the Intel Itanium 2 platform. These techniques include advanced pointer analysis, aggressive cross-file procedure inlining, targeted region formation, profile-guided optimizations, and, most importantly, aggressive and pervasive use of predication and control speculation. 

The collective effect of these techniques is evaluated with real-system measurements, showing them to achieve a 1.20 average (up to 1.59) speedup relative to classically optimized code and a 1.70 average (up to 2.51) speedup relative to code compiled with the Gnu GCC compiler. Achieving these results in the real-machine environment required advances in region formation heuristics, optimization, and speculation methods. Modern application tendencies toward decreased instruction locality and increased controlintensiveness made finding successful (sufficient and stable) ILP transformations more challenging, requiring adaptation and intensification of previous techniques. 

As we look both to newer applications and to achieving the next level of ILP, more sweeping program transformations are called for, but the compiler is today hard pressed to deliver stable transformations with current techniques. High-performance compilation of nonnumeric codes for EPIC chafes against programming style and control flow structure. This dissertation provides a thoroughgoing evaluation of the classical approach to ILP formation in an extant EPIC system, illustrating the circumstances that dictate the success of EPIC features in achieving high performance in contemporary benchmarks.