vix.ing · top · new · best · stats · spec

Threads and or-parallelism unified

2010/07/01 by Vítor Santos Costa, VíTOR SANTOS COSTA, Inês Dutra +3
Computer Science · #Data structure #Execution model #Exploit #Graph Theory and Algorithms #Logic programming #Logic, Reasoning, and Knowledge #Logic, programming, and type systems #Parallelism (grammar) #Programming paradigm #Prolog #Task parallelism #cs.DC

paper · pdf · doi:10.1017/s1471068410000190

published as Theory and Practice of Logic Programming, Volume 10, Issue 4-6, July 2010, pp 417-432 Published online by Cambridge University Press 09 Jul 2010 · 17 pages, 21 figures, International Conference on Logic Programming (ICLP 2010)

openalex publication_date 2010/07/01 · arxiv created 2010/07/26 · arxiv updated 2010/07/27 · openalex created_date 2016/06/24 · openalex updated_date 2026/08/05

Abstract

Abstract One of the main advantages of Logic Programming (LP) is that it provides an excellent framework for the parallel execution of programs. In this work we investigate novel techniques to efficiently exploit parallelism from real-world applications in low cost multi-core architectures. To achieve these goals, we revive and redesign the YapOr system to exploit or-parallelism based on a multi-threaded implementation. Our new approach takes full advantage of the state-of-the-art fast and optimized YAP Prolog engine and shares the underlying execution environment, scheduler and most of the data structures used to support YapOr's model. Initial experiments with our new approach consistently achieve almost linear speedups for most of the applications, proving itself as a good alternative for exploiting implicit parallelism in the currently available low cost multi-core architectures.

Citations