Transparent concurrent execution of mutually exclusive alternatives
1988 (English)Report (Other academic)
We examine the task of concurrently computing alternative solutions to a problem. We restrict our interest to the case where only one of the solutions is needed; in this case we need some rule for selecting between the solutions. We use "fastest first," where the first successful alternative is selected. For problems where the required execution time is unpredictable, such as database queries. this method can show substantial execution time performance increases. These increases are dependent on the mean execution time of the alternatives, the fastest execution time, and the overhead involved in concurrent computation. Among the problems with exploring multiple alternatives in parallel are side-effects and combinatorial explosion in the amount of state which must be preserved. These are solved by process management and an application of "copy-on-write" virtual memory management. The side effects resulting from interprocess communication are handled by a specialized message layer which interacts with process management. In order to test the utility of the design, we show how it can be applied to two application areas, distributed execution of recovery blocks and OR-parallelism in Prolog.
Place, publisher, year, edition, pages
New York, NY, USA: Columbia University, Department of Computer Sceince , 1988. , 11 p.
, Columbia University, Department of Computer Sceince, Technical Report, CUCS-387-88
Research subject SRA - ICT
IdentifiersURN: urn:nbn:se:kth:diva-63050OAI: oai:DiVA.org:kth-63050DiVA: diva2:481569
QC 201202272012-02-272012-01-212013-09-09Bibliographically approved