Title
Coordination and concurrency in multi-engine prolog
Abstract
We discuss the impact of the separation of logic engines (independent logic processing units) and multi-threading on the design of coordination mechanisms for a Prolog based agent infrastructure. We advocate a combination of coroutining constructs with focus on expressiveness and a simplified, multi-threading API that ensures optimal use available parallelism. In this context, native multi-threading is made available to the application programmer as a set of high-level primitives with a declarative flavor while cooperative constructs provide efficient and predictable coordination mechanisms. As illustrations of our techniques, a parallel fold operation as well as cooperative implementations of Linda blackboards and publish/subscribe are described.
Year
DOI
Venue
2011
10.1007/978-3-642-21464-6_11
COORDINATION
Keywords
Field
DocType
available parallelism,coordination mechanism,cooperative implementation,predictable coordination mechanism,multi-engine prolog,independent logic processing unit,cooperative construct,native multi-threading,multi-threading api,linda blackboard,logic engine,publish subscribe
Programming language,Software engineering,Computer science,Concurrency,Application programmer,Theoretical computer science,Implementation,Prolog,Distributed computing,Expressivity
Conference
Volume
ISSN
Citations 
6721
0302-9743
4
PageRank 
References 
Authors
0.40
20
1
Name
Order
Citations
PageRank
Paul Tarau11529113.14