Title
Optimization of x10 programs with ROSE compiler infrastructure
Abstract
X10 is a Java-like programming language that introduces new constructs to significantly simplify scale-out programming based on the Asynchronous Partitioned Global Address Space (APGAS) programming model. The fundamental goal of X10 is to enable scalable, high-performance, high-productivity programming of large scale computer systems for both conventional numerically intensive HPC workloads and for emerging “Big Data” workloads. X10 is implemented via source-to-source compilation; the X10 compiler takes as input X10 programs, applies high-level transformations primarily targeting X10’s APGAS constructs, and outputs either C++ or Java source code that is further compiled to yield an executable program. ROSE is a multi-lingual compiler infrastructure for optimizing HPC applications using source-to-source transformations. It supports widely used programming models for parallel and distributed computing and provides a rich set of optimizations for serial programming models. In this paper, we report our early experiences connecting the X10 and ROSE and compilers to enable X10 programs to benefit from ROSE’s suite of optimizations. To demonstrate the applicability of our approach, we compiled the LULESH proxy application with the combined toolchain and obtained a 10% performance improvement.
Year
DOI
Venue
2015
10.1145/2771774.2771777
X10@PLDI
Field
DocType
Citations 
Asynchronous communication,Dynamic compilation,Programming paradigm,Computer science,Parallel computing,Compiler,Partitioned global address space,Toolchain,Executable,Scalability
Conference
0
PageRank 
References 
Authors
0.34
6
4
Name
Order
Citations
PageRank
Michihiro Horie1204.18
Mikio Takeuchi224921.32
Kawachiya, K.314516.81
David Grove41883138.77