Restructuring programs for high-speed computers with Polaris

Blume, Eigenmann, Faigin, Grout, Jaejin Lee, Lawrence, Hoeflinger, Padua, Yunheung Paek, Petersen, Pottenger, Rauchwerger (+2 others)
1996 Proceedings of the 1996 ICPP Workshop on Challenges for Parallel Processing ICPPW-96  
The ability to automatically parallelize standard p r ogramming languages results in program portability across a wide range of machine architectures. It is the goal of the Polaris project to develop a new parallelizing compiler that overcomes limitations of current compilers. While current parallelizing compilers may succeed on small kernels, they often fail to extract any meaningful parallelism from whole applications. After a study of application codes, it was concluded that by adding a few
more » ... at by adding a few new techniques to current compilers, automatic parallelization becomes feasible for a range of whole applications. The techniques needed a r e interprocedural analysis, scalar and array privatization, symbolic dependence analysis, and advanced induction and reduction recognition and elimination, along with run-time techniques to permit the parallelization of loops with unknown dependence r elations.
doi:10.1109/icppw.1996.538601 dblp:conf/icpp/BlumeEFGLLHPPPPRTW96 fatcat:3g57rd7u5zfbblr7fwbxhdgl7u