LISP and Symbolic Computation, 7(1)111-134

Continuation-Based Control in the Implementation of Parallel Logic Programs

John S. Conery, Department of Computer and Information Science, University of Oregon

Abstract: Continuations are used to define the flow of messages between low level tasks in a parallel logic programming language. A combination of compiler and runtime operations reduces message traffic by up to 50% when success continuations are passed as parameters in messages that start new processes. Continuations are also the key to fast task switching, a critical operation in this fine grain parallel system. Data from sample programs shows the effectiveness of continuations in reducing message traffic and the speed with which task switches are performed on a typical host architecture.

Keywords: continuation, logic programming, implementation, parallel, message passing

This article is not available online.
[picture of journal cover]

May 2003 - hosc@brics.dk