This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Machine Independent AND and OR Parallel Execution of Logic Programs: Part I-The Binding Environment
February 1994 (vol. 5 no. 2)
pp. 170-180

We describe a binding environment for the AND and OR parallel execution of logicprograms that is suitable for both shared and nonshared memory multiprocessors. Thebinding environment was designed with a view of rendering a compiler using this bindingenvironment machine independent. The binding environment is similar to closedenvironments proposed by J. Conery. However, unlike Conery's scheme, it supports ORand independent AND parallelism on both types of machines. The term representation, the algorithms for unification and the join algorithms for parallel AND branches are presented in this paper. We also detail the differences between our scheme and Conery's scheme. A compiler based on this binding environment has been implemented on a platform for machine independent parallel programming called the Chare Kernel.

[1] U. Baron, J.C. de Kergommeaux,et al."The Parallel ECRC Prolog System PEPSys: An overview and evaluation results," presented at theInt. Conf. Fifth Generation Comput. Syst., Tokyo, Japan, Nov. 1988.
[2] P. Borgwardt, "Parallel Prolog using stack segments on shared-memory multiprocessors," presented at theSymp. Logic Programming, Feb. 1984.
[3] M. Bruynooghe, "The Memory Management of Prolog Implementations," inLogic Programming. New York: Academic Press, 1979.
[4] R. Butler, E. L. Lusk,et al., "ANLWAM: A parallel implementation of the warren abstract machine," Internal Rep., 1986.
[5] J. H. Chang and A. M. Despain, "Semi intelligent backtracking of Prolog based on a static data dependency analysis," presented at theSymp. Logic Programming, July 1985.
[6] J. H. Chang, A. M. Despain, and D. DeGroot, "AND parallelism of Logic programs based on a static data dependency analysis," inIEEE COMPCON, Feb. 1985.
[7] A. Ciepielewski and S. Haridi, "Control of activities in an an or-parallel token machine," presented at theSymp. Logic Programming, Feb. 1984.
[8] J. S. Conery, "The AND/OR-process model for parallel interpretation of logic programs," Ph.D. dissertation, Tech. Rep. 204, Univ. of California, Irvine, June 1983.
[9] Conery, J. "Binding environments for parallel logic programs in nonshared memory multiprocessors," inSymp. Logic Programming, Sept. 1987, pp. 457-467.
[10] Conery, J. "OM: A virtual machine for the AND/OR process model," Tech. Rep., Univ. of Oregon, 1988.
[11] J. S. Conery and D. F. Kibler, "AND parallelism in logic programs," presented at theInt. Joint Conf. Artificial Intell., Aug. 1983.
[12] J. A. Crammond, "Comparative study of unificaiton algorithms for OR parallel execution of Logic languages," presented at theInt. Conf. Parallel Processing, Aug. 1985.
[13] D. DeGroot, "Restricted AND parallelism," inInt. Conf. Fifth Generation Comput. Syst., Nov. 1984, pp. 471-478.
[14] W. Fenton, B. Ramkumar, V. A. Saletore, Sinha A. B., L. V. Kalé, "Supporting machine independent programming on diverse parallel architectures," presented at theInt. Conf. Parallel Processing, Aug. 1991.
[15] G. Gupta and B. Jyaraman, "Compiled AND-OR parallelism on shared memory multiprocessors," inNorth Amer. Conf. Logic Programming, Cleveland, OH, Oct. 1989, pp. 332-349.
[16] G. Gupta and B. Jyaraman, "On criteria for on-parallel execution models of logic programs," InNorth Amer. Conf. Logic Programming, Austin, TX, Oct. 1990, pp. 737-756.
[17] S. Haridi and P. Brand, "ANDORRA Prolog: An integration of Prolog and committed choice languages," inInt. Conf. Fifth Generation Comput. Syst., Tokyo, Japan, Nov. 1988, pp. 745-754.
[18] B. Hausman, A. Ciepielewski, and S. Haridi, "OR-parallel Prolog made efficient on shared memory multiprocessors," inSymp. Logic Programming, Sept. 1987, pp. 69-79.
[19] M. Hermenegildo and F. Rossi, "On the correctness and efficiency of independent AND parallelism in Logic programs," inNorth Amer. Conf.n Logic Programming, Oct. 1989, pp. 369-389.
[20] M. V. Hermenegildo, "An abstract machine based execution model for computer architecture design and efficient implementation of logic programs in parallel," Ph.D. dissertation, Tech. Rep. TR-86- 20, Univ. of Texas at Austin, Aug. 1986.
[21] L. V. Kalé, "'Completeness' and 'Full Parallelism' of parallel Logic programming schemes," InSymp. Logic Programming, San Francisco, CA, Sept. 1987, pp. 125-133.
[22] L. V. Kalé, "The REDUCE-OR process model for the parallel evaluation of logic programs," inInt. Conf. Logic Programming, Melbourne, May 1987, pp. 616-632.
[23] L. V. Kalé, "The Chare Kernel parallel programming system," presented at theInt. Conf. Parallel Processing, Aug. 1990.
[24] L. V. Kaléand B. Ramkumar, "Joining AND parallel solutions in AND/OR parallel systems," presented at theNorth Amer. Conf. Logic Programming, Oct. 1990.
[25] S. Kasif, M. Kohli, and J. Minker, "PRISM: A parallel inference system for problem solving," presented at theInt. Joint Conf. Artificial Intell., Karlsruhe, W. Germany, Aug. 1983.
[26] P. P. Li and A. J. Martin, "The Sync Model: A parallel execution method for logic programming," presented at theSymp. Logic Programming, Salt Lake City, UT, Sept. 1986.
[27] Y-J. Lin and V. Kumar, "Performance of AND-parallel execution of logic programs on a shared memory multiprocessor," inInt. Conf. Fifth Generation Comput. Syst., Tokyo, Japan, Nov. 1988, pp. 851-860.
[28] G. Lindstrom, "OR Parallelism on Applicative Architectures," inInt. Conf. Logic Programming, July 1984, pp. 159-170.
[29] C.S. Mellish, "An Alternative to Structure Sharing in the Implementation of a Prolog Interpreter," inLogic Programming. New York: Academic Press, 1979.
[30] S. Mudambi, "Performance of Aurora on a Switch-Based Multiprocessor," presented at theNorth Amer. Conf. Logic Programming, Oct. 1989.
[31] P. Tinker and G. Lindstrom, "A Performance-Oriented Design for OR-Parallel Logic Programming," inInt. Conf. Logic Programming, May 1987, pp. 601-615.
[32] D.H.D. Warren, "The SRI Model for Or-Parallel Execution of Prolog: Abstract Design and Implementation,"Proc. Symp. Logic Programming, CS Press, Los Alamitos, Calif., 1987, pp. 92-102.
[33] D.H.D. Warren, "The SRI Model for Or-Parallel Execution of Prolog: Abstract Design and Implementation,"Proc. Symp. Logic Programming, CS Press, Los Alamitos, Calif., 1987, pp. 92-102.
[34] D. S. Warren, "Efficient Prolog memory management for flexible control strategies," presented at theSymp. Logic Programming, Feb. 1984.
[35] H. Westphal and P. Robert "The PEPSys model: Combining backtracking, AND and OR parallelism," inSymp. Logic Programming, San Francisco, CA, Sept. 1987, pp. 436-448.
[36] M. J. Wise,Prolog Multiprocessors, int. ed. Englewood Cliffs, NJ: Prentice Hall,, 1986.
[37] H. Yasuhara and K. Nitadori, "ORBIT: A parallel computing model of Prolog,"New Generation Computing, vol. 2, 1984.

Index Terms:
Index Termsmultiprocessing systems; parallel programming; logic programming; parallel execution;logic programs; binding environment; nonshared memory multiprocessors; shared memory multiprocessors; compiler; Chare Kernel
Citation:
B. Ramkumar, L.V. Kalé, "Machine Independent AND and OR Parallel Execution of Logic Programs: Part I-The Binding Environment," IEEE Transactions on Parallel and Distributed Systems, vol. 5, no. 2, pp. 170-180, Feb. 1994, doi:10.1109/71.265944
Usage of this product signifies your acceptance of the Terms of Use.