IPSJ Online Transactions
Online ISSN : 1882-6660
ISSN-L : 1882-6660
Design and Implementation of a High Productivity Language with Communication Aggregation for Parallel Scientific Computation
Katsuaki IkegamiKenjiro Taura
Author information
JOURNAL FREE ACCESS

2012 Volume 5 Pages 87-95

Details
Abstract

Message passing model is a popular programming model in which users explicitly write both “send” and “receive” commands in programs and locate shared data on each process's local memory address. Consequently, it is difficult to write a program with complicated algorithms using a message passing model. This problem can be solved using a partitioned global address space (PGAS) model, which can provide virtual global address space and users can effortlessly write programs with complex data sharing. The PGAS model hides the network communication as implicit global memory access. This leads to better programmability, but there can be additional network communication overhead compared to a message passing model. We can reduce the overhead if programs read or write global memory in bulk, but this complicates writing programs. This paper presents the programming language and its runtime to achieve both the programmability and the performance with automatic communication aggregation. The programmer can write global memory accesses in the normal memory access style; then, the compiler and runtime aggregate the communication. In particular, the most time-consuming network accesses are placed in loops, and therefore, this paper suggests how the compiler detects global memory accesses in loops and aggregates them and how to implement that idea.

Content from these authors
© 2012 by the Information Processing Society of Japan
Previous article Next article
feedback
Top