Abstract
A new parallel computation model for logic programs is described. A parallel logic programming language Parallel Prolog has been considered as a high level language. A data-flow model is a theoretical background of our computation model. Owing to this the model is asynchronous and utilizes innate kinds of parallelism for a highly parallel all solution strategy in logic programs. We have designed new basic operators for Parallel Prolog supporting OR and AND-stream parallelism. We have designed an abstract parallel machine with distributed structure memory, which is based on data-flow principles. Basic formats of a data-flow instruction, operand and structure memory cell are introduced. A special operator for head unification, calling the first and other body literals, for completion of the clause body, for processing of the facts, built-in predicates and output of results have been designed. A stream, an asynchronous data structure, is used as a communication channel between body literals. A data structure called a template is used for selection of the goal terms for calling of each body literal. A parallel logic program in the form of the data-flow program graph generated by the compiler is introduced as a simple example of the complete program. The designed model will be implemented by its introduced abstract machine. Owing to larger operator granularity this new model has much lower requirements for a communication overhead in comparison with our previous fine grain version.
Preview
Unable to display preview. Download preview PDF.
References
Ali K.A.M.: “OR-Parallel Execution of Prolog on BC-Machineℍ, Proc. of the 5th Int. Conf. and Symposium on Logic Programmingℍ, 1988, pp. 1531–1545.
Arvind, Gostelow K.P.; “The U-Interpreterℍ, IEEE Computer, February 1982, pp. 42–49.
Baron U. et al.: “The Parallel ECRC Prolog System PEPSys: An Overview and Evaluation Resultsℍ, Proc. of the Int. Conference on Fifth Generation Computer Systems 1988, ICOT, 1988, pp. 841–850.
Blasko R.: “Highly-parallel Computation Model and Machine for Logic Programmingℍ, Parallel Computing '89, D.J. Evans, G.R. Joubert, F.J. Peters (eds.), Elsevier Science Publishers B.V. (North-Holland), 1990, pp. 541–546.
Clark K., Gregory S.: “PARLOG: Parallel Programming in Logicℍ, RR DOC 84/4, Imperial College of Science and Technology, London, April 1984, 54 p.
Clocksin W.F., Mellish C.S.: “Programming in Prologℍ, Springer-Verlag, 1984, 279 p.
INMOS: The Transputer Family, 1986, 130p.
Ito N. et al: “Data-flow Based Execution Mechanism of Parallel and Concurrent Prologℍ, NGC, 3 (1985), p. 15–41.
Omara F.A., Jesshope C.R.: “A Parallel Implementation of Prolog for Process or Data Concurrencyℍ, Parallel Computing '89, D.J. Evans, G.R. Joubert, F.J. Peters (eds.), Elsevier Science Publishers B.V. (North-Holland), 1990, pp. 411–418.
Shapiro E.: “Concurrent Prolog: A Progress Reportℍ, IEEE Computer, August 1986, pp. 44–58.
Treleaven Ph.C., Brownbridge D.R., Hopkins R.P.: “Data-Driven and Demand-Driven Computer Architectureℍ, Computing Surveys, Vol. 14, No. 1, March 1982, pp.93–143.
Ueda K.: “Guarded Horn Clausesℍ, TR-1O3, ICOT, Tokyo, July 1985, 12p.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Blasko, R. (1992). Parallel computation model for parallel prolog. In: Fronhöfer, B., Wrightson, G. (eds) Parallelization in Inference Systems. Lecture Notes in Computer Science, vol 590. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55425-4_15
Download citation
DOI: https://doi.org/10.1007/3-540-55425-4_15
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55425-7
Online ISBN: 978-3-540-47066-3
eBook Packages: Springer Book Archive