Andorra I: a parallel Prolog system that transparently exploits both And-and or-parallelism
PPOPP '91 Proceedings of the third ACM SIGPLAN symposium on Principles and practice of parallel programming
The Muse Or-parallel Prolog model and its performance
Proceedings of the 1990 North American conference on Logic programming
And-Or parallel Prolog: a recomputation based approach
Selected papers of international conference on Fifth generation computer systems 92
Evaluating parallel logic programming systems on scalable multiprocessors
PASCO '97 Proceedings of the second international symposium on Parallel symbolic computation
The SBA: exploiting orthogonality in AND-OR parallel systems
ILPS '97 Proceedings of the 1997 international symposium on Logic programming
An Abstract Machine for Restricted AND-Parallel Execution of Logic Programs
Proceedings of the Third International Conference on Logic Programming
Schheduling of OR-parallel Prolog on a Scalable, Reconfigurable, Distributed-Memory Multiprocessor
PARLE '91 Proceedings of Parallel Architectures and Languages - Volume II
Parallel execution of prolog programs: a survey
ACM Transactions on Programming Languages and Systems (TOPLAS)
PALS: An Or-Parallel Implementation of Prolog on Beowulf Architectures
Proceedings of the 17th International Conference on Logic Programming
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
This paper presents DAOS, a model for exploitation of And-and Or-parallelism in logic programs. DAOS assumes a physically distributed memory environment and a logically shared address space. Exploiting both major forms of implicit parallelism should serve a broadest range of applications. Besides, a model that uses a distributed memory environment provides scalability and can be implemented over a computer network. However, distributed implementations of logic programs have to deal with communication overhead and inherent complexity of distributed memory managent. DAOS overcomes those problems through the use of a distributed shared memory layer to provide single-writer, multiple-readers sharing for the main execution stacks combined with explicit message passing for work distribution and management.