Title
Minimizing Data and Synchronization Costs in One-Way Communication
Abstract
In contrast to the conventional send/receive model, the one-way communication model—using and —allows the decou- pling of message transmission from synchronization. This opens up new opportunities not only to further optimize communication but also to reduce synchronization overhead. In this paper, we present a general technique which uses a global dataflow framework to o pti- mize communication and synchronization in the context of the one- way communication model. Our approach works with the most general data alignments and distributions in languages lik e HPF, and is more powerful than other current solutions for elimin ating redundant synchronization messages. Preliminary results on sev- eral scientific benchmarks demonstrate that our approach is suc- cessful in minimizing the number of data and synchronization mes- sages. Most of the current compilers for distributed memory machines rely on the and primitives to implement communica- tion. The impact of this approach is twofold. First, this tec h- nique combines synchronization with communication in the sense that data messages also carry implicit synchronization inf ormation. While this relieves the compiler of the job of inserting sync hroniza- tion messages to maintain data integrity, separating synch roniza- tion messages from data messages may actually improve the per- formance of some programs. Second, the compiler has the diffi cult task of matching and operations in order to guarantee correct execution. In this paper, we focus on compilation of programs annotated by HPF-like directives with one-way communication operations and , introduced by Gupta and Schonberg (6) and Hin- richs (8). Let us consider Figure 1(a); here, a consumer proc essor sends a message to the producer informing that the producer can put data in a buffer physically located in the consumer's mem- ory. After receiving the message, the producer deposits the data in that buffer. We note that the operation is necessary for the repetition of this communication; that is, when the p roducer wants to deposit new data into the buffer, it must know that the consumer has indeed consumed the old data in the buffer. After briefly discussing the fundamental concepts used in th is paper in Section 2, in Section 3 we show how the communica-
Year
DOI
Venue
1998
10.1109/71.895791
IEEE Transactions on Parallel and Distributed Systems
Keywords
Field
DocType
elec. engr. & comp. sci. dept.,synchronization costs,ny 13244.,syracuse,one-way communication,minimizing data,syracuse university,data flow analysis,synchronisation,concurrent computing,context modeling,linear algebra,data analysis,communication model,compiler optimizations,data flow,message passing
Synchronization,Computer science,Data synchronization,Optimizing compiler,Multiprocessing,Models of communication,Synchronization (computer science),High Performance Fortran,Message passing,Distributed computing
Conference
Volume
Issue
ISSN
11
12
1045-9219
Citations 
PageRank 
References 
4
0.42
28
Authors
5
Name
Order
Citations
PageRank
Mahmut T. Kandemir17371568.54
Nagaraj Shenoy2726.49
Prithviraj Banerjee32763337.99
J. Ramanujam4129775.35
Alok N. Choudhary518228.24