2008
DOI: 10.1007/978-3-540-89982-2_53
|View full text |Cite
|
Sign up to set email alerts
|

A High-Level Implementation of Non-deterministic, Unrestricted, Independent And-Parallelism

Abstract: Abstract. The growing popularity of multicore architectures has renewed interest in language-based approaches to the exploitation of parallelism. Logic programming has proved an interesting framework to this end, and there are parallel implementations which have achieved significant speedups, but at the cost of a quite sophisticated low-level machinery. This machinery has been found challenging to code and, specially, to maintain and expand. In this paper, we follow a different approach which adopts a higher l… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
16
0

Year Published

2009
2009
2014
2014

Publication Types

Select...
4
2

Relationship

2
4

Authors

Journals

citations
Cited by 11 publications
(16 citation statements)
references
References 18 publications
(31 reference statements)
0
16
0
Order By: Relevance
“…These extensions have also introduced imperative control structures and nested syntactic scopes. Concurrency, Parallelism, and Distributed Execution: other packages bring in different capabilities for expressing concurrency (including a concurrent, shared version of the internal fact database which can be used for synchronization (Carro and Hermenegildo 1999)), distribution, and parallel execution (Cabeza and Hermenegildo 1995;Casas et al 2008). A notion of "active objects" also allows compiling objects so that they are ultimately mapped to a standalone process, which can then be transparently accessed by the rest of an application.…”
Section: Supporting Multiple Paradigms and Useful Featuresmentioning
confidence: 99%
See 1 more Smart Citation
“…These extensions have also introduced imperative control structures and nested syntactic scopes. Concurrency, Parallelism, and Distributed Execution: other packages bring in different capabilities for expressing concurrency (including a concurrent, shared version of the internal fact database which can be used for synchronization (Carro and Hermenegildo 1999)), distribution, and parallel execution (Cabeza and Hermenegildo 1995;Casas et al 2008). A notion of "active objects" also allows compiling objects so that they are ultimately mapped to a standalone process, which can then be transparently accessed by the rest of an application.…”
Section: Supporting Multiple Paradigms and Useful Featuresmentioning
confidence: 99%
“…level which are used as support for independent and-parallel execution (Casas et al 2008). Task stealing is used to achieve independence between the number of O.S.…”
Section: High Performance With Less Effortmentioning
confidence: 99%
“…Unfortunately, this solution creates a difference between logical and physical views of the stacks, and adds the complexity of having to manage parallel accesses to the private stacks of each of the agents. More recently, a further solution to the problem was presented in [14], which is based on moving the execution of the trapped goals to the top of the stack before the agent starts to compute a new answer of the parallel goal. This solution simplifies the implementation, reducing the need for low-level machinery in comparison to previous approaches.…”
Section: The Trapped Goal Problemmentioning
confidence: 99%
“…Such implementation is based on a previous high-level implementation of IAP [14], whose functionality has been augmented with the support to manage trapped goals and garbage slots.…”
Section: Performance Evaluationmentioning
confidence: 99%
See 1 more Smart Citation