Multiprocessor Execution of Logic Programs


Book Description

Multiprocessor Execution of Logic Programs addresses the problem of efficient implementation of logic programming languages, specifically Prolog, on multiprocessor architectures. The approaches and implementations developed attempt to take full advantage of sequential implementation technology developed for Prolog (such as the WAM) while exploiting all forms of control parallelism present in logic programs, namely, or-parallelism, independent and-parallelism and dependent and-parallelism. Coverage includes a thorough survey of parallel implementation techniques and parallel systems developed for Prolog. Multiprocessor Execution of Logic Programs is recommended for people implementing parallel logic programming systems, parallel symbolic systems, parallel AI systems, and parallel theorem proving systems. It will also be useful to people who wish to learn about the implementation of parallel logic programming systems.




Models for Parallel and Distributed Computation


Book Description

Parallel and distributed computation has been gaining a great lot of attention in the last decades. During this period, the advances attained in computing and communication technologies, and the reduction in the costs of those technolo gies, played a central role in the rapid growth of the interest in the use of parallel and distributed computation in a number of areas of engineering and sciences. Many actual applications have been successfully implemented in various plat forms varying from pure shared-memory to totally distributed models, passing through hybrid approaches such as distributed-shared memory architectures. Parallel and distributed computation differs from dassical sequential compu tation in some of the following major aspects: the number of processing units, independent local dock for each unit, the number of memory units, and the programming model. For representing this diversity, and depending on what level we are looking at the problem, researchers have proposed some models to abstract the main characteristics or parameters (physical components or logical mechanisms) of parallel computers. The problem of establishing a suitable model is to find a reasonable trade-off among simplicity, power of expression and universality. Then, be able to study and analyze more precisely the behavior of parallel applications.




Parallel and Distributed Logic Programming


Book Description

This book introduces the parallel and distributed approach to logic programming, examining existing models of distributed logic programming, and proposing an alternative framework for distributed logic programming using extended Petri nets. The hardwired realization of the Petri net based framework is presented in detail, and principles of mapping of a logic program on to the proposed framework are outlined. Finally, the book explores the scope of Petri net models in designing next-generation deductive database machines.




Execution Models of Prolog for Parallel Computers


Book Description

The research described in this book addresses the semantic gap between logic programming languages and the architecture of parallel computers - the problem of how to implement logic programming languages on parallel computers in a way that can most effectively exploit the inherent parallelism of the language and efficiently utilize the parallel architecture of the computer. Following a useful review of other research results, the first project explores the possibilities of implementing logic programs on MIMD, nonshared memory massively parallel computers containing 100 to 1,000 processing elements. The second investigates the possibility of implementing Prolog on a typical SIMD machine, called a Distributed Processor Array. The author's objectives are to define a parallel computational paradigm (the Extended Cellular-Dataflow Model) that can be used to create a Parallel Prolog Abstract Machine as a general starting point for implementing logic programming languages on parallel computers, to exploit the different types of parallelism of these programs, to define an efficient parallel logic machine, to explore the possibilities of implementing logic programming languages on array processors, such as the DAP, to invent parallel implementation techniques for effectively executing Prolog on the DAP, and to define a parallel extension of Prolog that is able to utilize the processor aggregate of the DAP for effectively solving numerical subproblems within logic programs Peter Kacsuk is with Multilogic Computing Ltd. of Budapest, Hungary.







Parallel Execution of Logic Programs


Book Description

This book is an updated version of my Ph.D. dissertation, The AND/OR Process Model for Parallel Interpretation of Logic Programs. The three years since that paper was finished (or so I thought then) have seen quite a bit of work in the area of parallel execution models and programming languages for logic programs. A quick glance at the bibliography here shows roughly 50 papers on these topics, 40 of which were published after 1983. The main difference between the book and the dissertation is the updated survey of related work. One of the appendices in the dissertation was an overview of a Prolog implementation of an interpreter based on the AND/OR Process Model, a simulator I used to get some preliminary measurements of parallelism in logic programs. In the last three years I have been involved with three other implementations. One was written in C and is now being installed on a small multiprocessor at the University of Oregon. Most of the programming of this interpreter was done by Nitin More under my direction for his M.S. project. The other two, one written in Multilisp and the other in Modula-2, are more limited, intended to test ideas about implementing specific aspects of the model. Instead of an appendix describing one interpreter, this book has more detail about implementation included in Chapters 5 through 7, based on a combination of ideas from the four interpreters.




Implementations of Distributed Prolog


Book Description

Leading international contributors present papers pertaining to current approaches in the design and implementation of distributed logic languages that are a generation beyond standard Prolog, all of them introducing ideas of distributed and parallel programming in an attempt to bring high performance features to logic programming applications. Details all aspects of underlying research at a number of global centers including language, implementation models and techniques, hardware architecture, performance results, applications and more.




Parallel Execution of Logic Programs


Book Description

Logic programming refers to execution of programs written in Horn logic. Among the advantages of this style of programming are its simple declarativeand procedural semantics, high expressive power and inherent nondeterminism. The papers included in this volume were presented at the Workshop on Parallel Logic Programming held in Paris on June 24, 1991, as part of the 8th International Conference on Logic Programming. The papers represent the state of the art in parallel logic programming, and report the current research in this area, including many new results. The three essential issues in parallel execution of logic programs which the papers address are: - Which form(s) of parallelism (or-parallelism, and-parallelism, stream parallelism, data-parallelism, etc.) will be exploited? - Will parallelism be explicitly programmed by programmers, or will it be exploited implicitly without their help? - Which target parallel architecture will the logic program(s) run on?




Parallel and Distributed Processing


Book Description

This volume contains the proceedings from the workshops held in conjunction with the IEEE International Parallel and Distributed Processing Symposium, IPDPS 2000, on 1-5 May 2000 in Cancun, Mexico. The workshopsprovidea forum for bringing together researchers,practiti- ers, and designers from various backgrounds to discuss the state of the art in parallelism.Theyfocusondi erentaspectsofparallelism,fromruntimesystems to formal methods, from optics to irregular problems, from biology to networks of personal computers, from embedded systems to programming environments; the following workshops are represented in this volume: { Workshop on Personal Computer Based Networks of Workstations { Workshop on Advances in Parallel and Distributed Computational Models { Workshop on Par. and Dist. Comp. in Image, Video, and Multimedia { Workshop on High-Level Parallel Prog. Models and Supportive Env. { Workshop on High Performance Data Mining { Workshop on Solving Irregularly Structured Problems in Parallel { Workshop on Java for Parallel and Distributed Computing { WorkshoponBiologicallyInspiredSolutionsto ParallelProcessingProblems { Workshop on Parallel and Distributed Real-Time Systems { Workshop on Embedded HPC Systems and Applications { Recon gurable Architectures Workshop { Workshop on Formal Methods for Parallel Programming { Workshop on Optics and Computer Science { Workshop on Run-Time Systems for Parallel Programming { Workshop on Fault-Tolerant Parallel and Distributed Systems All papers published in the workshops proceedings were selected by the p- gram committee on the basis of referee reports. Each paper was reviewed by independent referees who judged the papers for originality, quality, and cons- tency with the themes of the workshops.