Title
Pipes: linguistic support for ordered asynchronous invocations
Abstract
We describe pipes, a new linguistic mechanism for sequences of ordered asynchronous procedure calls in multiprocessor systems. Pipes allow a sequence of remote invocations to be performed in order, but asynchronously with respect to the calling thread. Using pipes results in programs that are easier to understand and debug than those with explicit synchronization between asynchronous invocations. The semantics of pipes make no assumptions about the underlying architecture, which enhances code portability. However, the implementation of pipes by the language compiler can be optimized so as to take advantage of any underlying message ordering a particular architecture may provide. Pipes also provide application-transparent flow control for asynchronous invocations and are able to throttle invocations from multiple calling threads. We present four implementations of pipes and show that the performance and space overheads associated with pipes are low.
Year
DOI
Venue
1992
10.1145/156668.156698
SIGPLAN Workshop
Keywords
DocType
Volume
underlying message,linguistic support,pipes result,asynchronous procedure call,explicit synchronization,underlying architecture,multiple calling thread,code portability,application-transparent flow control,ordered asynchronous invocations,particular architecture,asynchronous invocation,sequences,linguistics,language,programming languages,computer architecture,semantics,flow,compilers
Conference
28
Issue
ISSN
Citations 
1
0362-1340
1
PageRank 
References 
Authors
0.36
28
5
Name
Order
Citations
PageRank
Eric A. Brewer17129907.87
Adrian Colbrook2403114.95
Wilson C. Hsieh32532261.94
Paul Wang44411.01
William E. Weihl52614903.11