YapOr: an Or-Parallel Prolog System Based on Environment Copying
Ricardo Rocha, Fernando Silva and Vítor Santos Costa
September 1999
Abstract
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.
Bibtex
@InProceedings{rocha-epia99,
author = {R. Rocha and F. Silva and V. Santos Costa},
title = {{YapOr: an Or-Parallel Prolog System Based on Environment Copying}},
booktitle = {Proceedings of the 9th Portuguese Conference on Artificial Intelligence (EPIA 1999)},
pages = {178--192},
number = {1695},
series = {LNAI},
publisher = {Springer},
editor = {P. Barahona and J. Alferes},
month = {September},
year = {1999},
address = {Évora, Portugal},
}
Download Paper
PDF file
Springer
Download Slides
PDF file