Parallel logic programming on distributed shared memory system

We present an implementation of a parallel logic programming system on a distributed shared memory (DSM) system. Firstly, we give a brief introduction to Andorra-I parallel logic programming system implemented on multiprocessors. Secondly, we outline the concurrent programming environment provided by a distributed shared memory system TreadMarks. Thirdly, we discuss the implementation issues of Andorra-I system based on TreadMarks, such as, shared memory consistency, synchronization, mutual exclusion, shared memory allocation. Finally, we discuss the implementation results and further research issues for building a practically useful logic-based reasoning system on distributed shared memory systems.

[1]  Willy Zwaenepoel,et al.  Munin: distributed shared memory based on type-specific memory coherence , 1990, PPOPP '90.

[2]  Mats Carlsson Design and implementation of an or-parallel Prolog engine , 1990, RIT / KTH / TRITA-CS.

[3]  David Poole,et al.  A Logical Framework for Default Reasoning , 1988, Artif. Intell..

[4]  Gao Yaoqing,et al.  Reduction of code space in parallel logic programming systems , 1991 .

[5]  Alan L. Cox,et al.  TreadMarks: shared memory computing on networks of workstations , 1996 .

[6]  Anoop Gupta,et al.  Memory consistency and event ordering in scalable shared-memory multiprocessors , 1990, [1990] Proceedings. The 17th Annual International Symposium on Computer Architecture.

[7]  Shouren Hu,et al.  A Compliling Approach for Exploiting And-parallelism in Parallel Logic Programming Systems , 1989, PARLE.

[8]  Brian N. Bershad,et al.  The Midway distributed shared memory system , 1993, Digest of Papers. Compcon Spring.

[9]  Chengzheng Sun,et al.  The sharing of environment in AND-OR-parallel execution of logic programs , 1987, ISCA '87.

[10]  Chengzheng Sun,et al.  Reduction of Code Space in Parallel Logic Programming Systems , 1991, PARLE.

[11]  Anoop Gupta,et al.  Memory consistency and event ordering in scalable shared-memory multiprocessors , 1990, ISCA '90.

[12]  Seif Haridi,et al.  Data Diffusion Machine - A Scalable Shared Virtual Memory Multiprocessor , 1988, FGCS.

[13]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[14]  Rong Yang,et al.  Andorra I: a parallel Prolog system that transparently exploits both And-and or-parallelism , 1991, PPOPP '91.

[15]  Chengzheng Sun,et al.  The OR-Forest Description for the Execution of Logic Programs , 1986, ICLP.

[16]  Dingxing Wang,et al.  Intelligent Scheduling AND- and OR-Parallelism in the Parallel Logic Programming System RAP/LOP-PIM , 1991, ICPP.

[17]  P. Keleher,et al.  Lazy release consistency for distributed shared memory , 1996 .