TY - GEN
T1 - Reducing parallelizing compilation time by removing redundant analysis
AU - Han, Jixin
AU - Fujino, Rina
AU - Tamura, Ryota
AU - Shimaoka, Mamoru
AU - Mikami, Hiroki
AU - Takamura, Moriyuki
AU - Kamiya, Sachio
AU - Suzuki, Kazuhiko
AU - Miyajima, Takahiro
AU - Kimura, Keiji
AU - Kasahara, Hironori
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/10/21
Y1 - 2016/10/21
N2 - Parallelizing compilers employing powerful compiler optimizations are essential tools to fully exploit performance from today's computer systems. These optimizations are supported by both highly sophisticated program analysis techniques and aggressive program restructuring techniques. However, the compilation time for such powerful compilers becomes larger and larger for real commercial application due to these strong program analysis techniques. In this paper, we propose a compilation time reduction technique for parallelizing compilers. The basic idea of the proposed technique is based on an observation that parallelizing compilers apply multiple program analysis passes and restructuring passes to a source program but all program analysis passes do not have to be applied to the whole source program. Thus, there is an opportunity for compilation time reduction by removing redundant program analysis. We describe the removing redundant program analysis techniques considering the inter-procedural propagation of analysis update information in this paper. We implement the proposed technique into OSCAR automatically multigrain parallelizing compiler. We then evaluate the proposed technique by using three proprietary large scale programs. The proposed technique can remove 37.7% of program analysis time on average for basic analysis includes def-use analysis and dependence calculation, and 51.7% for pointer analysis, respectively.
AB - Parallelizing compilers employing powerful compiler optimizations are essential tools to fully exploit performance from today's computer systems. These optimizations are supported by both highly sophisticated program analysis techniques and aggressive program restructuring techniques. However, the compilation time for such powerful compilers becomes larger and larger for real commercial application due to these strong program analysis techniques. In this paper, we propose a compilation time reduction technique for parallelizing compilers. The basic idea of the proposed technique is based on an observation that parallelizing compilers apply multiple program analysis passes and restructuring passes to a source program but all program analysis passes do not have to be applied to the whole source program. Thus, there is an opportunity for compilation time reduction by removing redundant program analysis. We describe the removing redundant program analysis techniques considering the inter-procedural propagation of analysis update information in this paper. We implement the proposed technique into OSCAR automatically multigrain parallelizing compiler. We then evaluate the proposed technique by using three proprietary large scale programs. The proposed technique can remove 37.7% of program analysis time on average for basic analysis includes def-use analysis and dependence calculation, and 51.7% for pointer analysis, respectively.
KW - Parallelizing compiler
KW - Program analysis
KW - Program optimizations
UR - http://www.scopus.com/inward/record.url?scp=84997824474&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84997824474&partnerID=8YFLogxK
U2 - 10.1145/3002125.3002129
DO - 10.1145/3002125.3002129
M3 - Conference contribution
AN - SCOPUS:84997824474
T3 - SEPS 2016 - Proceedings of the 3rd International Workshop on Software Engineering for Parallel Systems, co-located with SPLASH 2016
SP - 1
EP - 9
BT - SEPS 2016 - Proceedings of the 3rd International Workshop on Software Engineering for Parallel Systems, co-located with SPLASH 2016
A2 - Jannesari, Ali
A2 - Sato, Yukinori
A2 - Winter, Stefan
PB - Association for Computing Machinery, Inc
T2 - 3rd International Workshop on Software Engineering for Parallel Systems, SEPS 2016
Y2 - 1 November 2016
ER -