The RB Language
1988 (English)Report (Other academic)
Typical algorithms for distributed or parallel computations are cooperative, meaning that the sequential component is broken down into cooperating pieces, which are distributed across available hardware. An approach wich has recently gained some attention is competitive processing, where several versions of a sequential program are distributed across available processors to gain performance from algorithmic diversity. There is also potential for fault tolerance from available hardware by executing the sequential versions, called alternatives, on a distributed configuration. Schemes for implementing competitive concurrent processing have been described in the literature, but there is little implementation experience. RB is a practical step towards gaining such experience. RB is a programming language for specifying alternative methods of per- forming a computation, where at most one of the results of the alternatives is used. Our prototype implementation uses a combination of a language preprocessor for C and a runtime library to provide the desired semantics. Using other base programming languages, e.g., Ada, or other methods of managing alternatives is straightforward.
Place, publisher, year, edition, pages
New York, NY, USA: Columbia University, Department of Computer Science , 1988.
, Columbia University, Department of Computer Sceince, Technical Report, CUCS-364-88
Research subject SRA - ICT
IdentifiersURN: urn:nbn:se:kth:diva-79423OAI: oai:DiVA.org:kth-79423DiVA: diva2:495478
NR 201408052012-02-092012-02-092013-09-09Bibliographically approved