Accession Number : ADA256873


Title :   Pipes: Linguistic Support for Ordered Asynchronous Invocations


Descriptive Note : Technical rept.


Corporate Author : MASSACHUSETTS INST OF TECH CAMBRIDGE LAB FOR COMPUTER SCIENCE


Personal Author(s) : Colbrook, Adrian ; Brewer, Eric A ; Hsieh, Wilson C ; Wang, Paul ; Weihl, William E


Full Text : https://apps.dtic.mil/dtic/tr/fulltext/u2/a256873.pdf


Report Date : Apr 1992


Pagination or Media Count : 33


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.


Descriptors :   *COMPUTER COMMUNICATIONS , *MULTIPROCESSORS , COMPUTER PROGRAMS , PROGRAMMING LANGUAGES , SEMANTICS , FLOW , DEBUGGING(COMPUTERS) , ASYNCHRONOUS COMPUTERS , LINGUISTICS , COMPILERS , COMPUTER ARCHITECTURE , PIPES , SEQUENCES , LANGUAGE


Subject Categories : Computer Programming and Software
      Computer Hardware
      Computer Systems


Distribution Statement : APPROVED FOR PUBLIC RELEASE