Extended Dynamic Dependent And-Parallelism in ACE.
Enrico Pontelli, Gopal Gupta · 1999
We present an execution model for Dynamic Dependent And-parallelism as well as an extension of the scheme in which deterministic consumer goals are allowed to bind their dependent variables ahead of time. The extended scheme leads to: (i) improved efficiency due to pruning of program search space; and, (ii) exploitation of more parallelism due to increased overlapping of dependent executions. In dynamic dependent and-parallel execution, given a parallel conjunction with a shared variable X, the leftmost goal is normally designated as the producer of the binding for X, all others goals are designated as consumers. If the producer goal finishes execution without binding X, then the leftmost consumer goal becomes the next producer and so on. In the extended scheme a deterministic consumer goal is also allowed to bind the dependent variable. Our extension leads to incorporation of coroutining in a dynamic dependent and-parallel system. The extended dynamic dependent and-paral...