The muse approach to Or-parallel Prolog
International Journal of Parallel Programming
Flexible scheduling of or-parallelism is Aurora: the Bristol scheduler
PARLE '91 Proceedings on Parallel architectures and languages Europe : volume II: parallel languages: volume II: parallel languages
Full Prolog and scheduling or-parallelism in muse
International Journal of Parallel Programming
Analysis of Or-parallel execution models
ACM Transactions on Programming Languages and Systems (TOPLAS)
The SBA: exploiting orthogonality in AND-OR parallel systems
ILPS '97 Proceedings of the 1997 international symposium on Logic programming
PALS: An Or-Parallel Implementation of Prolog on Beowulf Architectures
Proceedings of the 17th International Conference on Logic Programming
On a Tabling Engine That Can Exploit Or-Parallelism
Proceedings of the 17th International Conference on Logic Programming
Achieving Scalability in Parallel Tabled Logic Programs
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
Novel Models for Or-Parallel Logic Programs: A Performance Analysis
Euro-Par '00 Proceedings from the 6th International Euro-Par Conference on Parallel Processing
High Level Thread-Based Competitive Or-Parallelism in Logtalk
PADL '09 Proceedings of the 11th International Symposium on Practical Aspects of Declarative Languages
Threads and or-parallelism unified
Theory and Practice of Logic Programming
Or-parallel prolog execution on multicores based on stack splitting
DAMP '12 Proceedings of the 7th workshop on Declarative aspects and applications of multicore programming
Theory and Practice of Logic Programming - Prolog Systems
Hi-index | 0.00 |
YapOr is an or-parallel system that extends the Yap Prolog system to exploit implicit or-parallelism in Prolog programs. It is based on the environment copying model, as first implemented in Muse. The development of YapOr required solutions for some important issues, such as designing the data structures to support parallel processing, implementing incremental copying technique, developing a memory organization able to answer with efficiency to parallel processing and to incremental copying in particular, implementing the scheduler strategies, designing an interface between the scheduler and the engine, implementing the sharing work process, and implementing support to the cut builtin. An initial evaluation of YapOr performance showed that it achieves very good performance on a large set of benchmark programs. Indeed, YapOr compares favorably with a mature parallel Prolog system such as Muse, both in terms of base speed and in terms of speedups.