Enhancing the Role of Inlining in Effective Interprocedural Parallelization

  • Authors:
  • Jichi Guo;Mike Stiles;Qing Yi;Kleanthis Psarris

  • Affiliations:
  • -;-;-;-

  • Venue:
  • ICPP '11 Proceedings of the 2011 International Conference on Parallel Processing
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

The emergence of multi-core architectures makes it essential for optimizing compilers to automatically extract parallelism for large scienti脙"脗篓脙聟c applications composed of many subroutines residing in different 脙"脗篓脙聟les. In lining is a well-known technique which can be used to erase procedural boundaries and enable more aggressive loop parallelization. However, conventional in lining cannot be applied to external libraries where the source code is not available, and when overly applied, it can degrade the effectiveness of compiler optimizations due to excessive code complexity. This paper highlights some obstacles we encountered while applying conventional in lining combined with automatic loop parallelization using the Polaris optimizing compiler and presents a new approach, annotation-based in lining, to effectively overcome these obstacles. Our experimental results show that the annotation-based in lining approach can eliminate negative impact of conventional in lining while enhancing the effectiveness of interprocedural parallelization for a majority of applications from the PERFECT benchmark suite.