Citation
Casas, Amadeo and Carro Liñares, Manuel and Hermenegildo, Manuel V.
(2008).
Towards a High-Level Implementation of Execution Primitives for Unrestricted, Independent And-Parallelism.
In: "10th International Symposium on Practical Aspects of Declarative Languages, PADL'08", 07/01/2008-08/01/2008, San Francisco, USA. ISBN 978-3-540-77441-9.
Abstract
Most efficient implementations of parallel logic programming rely on complex low-level machinery which is arguably difficult to implement and modify. We explore an alternative approach aimed at taming that complexity by raising core parts of the implementation to the source language level for the particular case of and-parallellism. We handle a significant portion of the parallel implementation at the Prolog level with the help of a comparatively small number of concurrency.related primitives which take case of lower-level tasks such as locking, thread management, stack set management, etc. The approach does not eliminate altogether modifications to the abstract machine, but it does greatly simplify them and it also facilitates experimenting with different alternatives. We show how this approach allows implementing both restricted and unrestricted (i.e., non fork-join) parallelism. Preliminary esperiments show thay the performance safcrifieced is reasonable, although granularity of unrestricted parallelism contributes to better observed speedups.