Abstract
Parallel Prolog systems consist, at least conceptually, of two components: an engine and a scheduler. This paper addresses the problem of defining a clean interface between these components. Such an interface has been designed for Aurora, a prototype or-parallel implementation of the full Prolog language for shared memory multiprocessors.
The practical purpose of the interface is to enable different engine and scheduler implementations to be used interchangeably. The development of the interface has, however, contributed in great extent to the clarification of issues in exploiting or-parallelism in Prolog. We believe that these issues are relevant to a wider circle of research in the area of or-parallel implementations of logic programming.
We believe that the concept of an engine-scheduler interface is applicable to a wider range of parallel Prolog implementations. Indeed, the present interface has been used in the Andorra-I system, which supports both and- and or-parallelism.
On leave from (and present address) SZKI IQSOFT, Donáti u. 35–45, Budapest, Hungary.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Khayri A. M. Ali and Roland Karlsson. The Muse approach to or-parallel Prolog. International Journal of Parallel Programming, 19(2):129–162, April 1990.
Anthony Beaumont, S. Muthu Raman, Vítor Santos Costa, Péter Szeredi, David H. D. Warren, and Rong Yang. Andorra-I: An implementation of the Basic Andorra Model. Technical Report TR-90-21, University of Bristol, Computer Science Department, September 1990. Presented at the Workshop on Parallel Implementation of Languages for Symbolic Computation, July 1990, University of Oregon.
Anthony Beaumont, S. Muthu Raman, and Péter Szeredi. Flexible scheduling or-parallelism in Aurora: the Bristol scheduler. In PARLE 91, Conference on Parallel Architectures and Languages Europe. Springer-Verlag, June 1991.
BIM. BIM_Prolog release 2.4. 3078 Everberg, Belgium, March 1989.
Per Brand. Wavefront scheduling. Internal Report, Gigalips Project, 1988.
Ralph Butler, Terry Disz, Ewing Lusk, Robert Olson, Ross Overbeek, and Rick Stevens. Scheduling OR-parallelism: an Argonne perspective. In Proceedings of the Fifth International Conference on Logic Programming, pages 1590–1605. MIT Press, August 1988.
Alan Calderwood. Aurora—description of scheduler interfaces. Internal Report, Gigalips Project, January 1988.
Alan Calderwood and Péter Szeredi. Scheduling or-parallelism in Aurora—the Manchester scheduler. In Proceedings of the Sixth International Conference on Logic Programming, pages 419–435. MIT Press, June 1989.
Mats Carlsson and Péter Szeredi. The Aurora abstract machine and its emulator. SICS Research Report R90005, Swedish Institute of Computer Science, 1990.
Bogumił Hausman. Pruning and Speculative Work in OR-Parallel PROLOG. PhD thesis, The Royal Institute of Technology, Stockholm, 1990.
Ewing Lusk, David H. D. Warren, Seif Haridi, et al. The Aurora or-parallel Prolog system. New Generation Computing, 7(2,3):243–271, 1990.
Vítor Santos Costa, David H. D. Warren, and Rong Yang. Andorra-I: A parallel Prolog system that transparently exploits both and-and or-parallelism. In Proceedings of the Third ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. ACM Press, April 1991.
Raed Sindaha. Scheduling speculative work in the Aurora or-parallel Prolog system. Internal Report, Gigalips Project, March 1990.
Péter Szeredi. Performance analysis of the Aurora or-parallel Prolog system. In Proceedings of the North American Conference on Logic Programming, pages 713–732. MIT Press, October 1989.
Péter Szeredi and Mats Carlsson. The engine-scheduler interface in the Aurora or-parallel Prolog system. Technical Report TR-90-09, University of Bristol, Computer Science Department, April 1990.
David H. D. Warren. The SRI model for or-parallel execution of Prolog—abstract design and implementation issues. In Proceedings of the 1987 Symposium on Logic Programming, pages 92–102, 1987.
Patrick Weemeeuw. Memory compaction for shared memory multiprocessors, design and specification. In Proceedings of the North American Conference on Logic Programming. MIT Press, October 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag
About this paper
Cite this paper
Szeredi, P., Yang, R., Carlsson, M. (1991). Interfacing engines and schedulers in Or-Parallel Prolog systems. In: Aarts, E.H.L., van Leeuwen, J., Rem, M. (eds) PARLE '91 Parallel Architectures and Languages Europe. PARLE 1991. Lecture Notes in Computer Science, vol 506. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-54152-7_79
Download citation
DOI: https://doi.org/10.1007/3-540-54152-7_79
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54152-3
Online ISBN: 978-3-540-47472-2
eBook Packages: Springer Book Archive