A knowledge based system for parallel processing of logic programs

Wen-Kai Chung, William B. Day · 1987

Current research on parallel execution of logic programs exploits dynamic parallelism: the parallel processes are dynamically allocated to solve the goals which are generated in the run-time. This dissertation introduces a knowledge based execution model, which statically allocates program partitions prior to execution. Each processor is specialized by the allocation, and only handles a category of goals which consult the local knowledge base. A static allocation scheme not only presents better execution characteristics, but also supports the operational semantics that logic program execution is knowledge deduction. Consequently, this knowledge based execution model provides new opportunities for knowledge base maintenance and machine learning in a multiprocessor environment. With help from mode declaration and run-time literal status checking, the computation model takes advantage of the single-assignment characteristics of logic variables to spawn AND-parallel processing. As soon as a literal in the clause body is found ready, it is granted execution. No data dependency analysis is needed. The multitasking capability of each processor provides the fundamental constructs for parallel execution in this knowledge based system. A prototype implementation of this knowledge based system is also presented in this dissertation.

Read the paper · More papers on PaperTik