| G. Gupta and M. V. Hermenegildo. Recomputation based Implementations of And-Or Parallel Prolog. In International Conference on Fifth Generation Computer Systems |
....conclusions. 2 Exploiting And Or Parallelism ORP and IAP are arguably two of the more interesting forms of parallelism available in Prolog programs. Several methods have been proposed to exploit And Or parallelism in PLP systems. We propose to use recomputation, according to the C Tree concept [8]. To understand the motivation for recomputation, consider the following and parallel query: a(X) b(Y) where represents a parallel conjunction. Figure 1 shows that both goals have several solutions. After running the goals a(X) and b(Y) in parallel, one needs to combine the solutions. ....
....the support of Full Prolog, as semantics are closer. The price is that reuse saves some effort in recomputing goals to the right. There have been arguments that for Prolog applications reuse does not reduce much search space over recomputing solutions, as Prolog programmers avoid such situations [8]. a(X) b(Y) X=a X=b Y=c Y=f a(X) b(Y) X=a (a) b) c) a(X) b(Y) a(X) b(Y) Y=c Y=c Fig. 1. a) Reuse (b) Recomputation (c) C Tree The C tree is shown in Figure 1(c) In the C tree [8] whenever a worker picks an alternative from another process, it creates a copy of all parallel ....
[Article contains additional citation context not shown here]
G. Gupta and M. V. Hermenegildo. Recomputation based Implementations of And-Or Parallel Prolog. In International Conference on Fifth Generation Computer Systems
....in exploiting both forms of parallelism is Andorra I [25] but the and parallelism is limited to determinate goals only, with or and and parallelism exploited in distinct phases. Comparatively recently, various implementation schemes that exploits both forms of parallelism have been proposed ([13, 14, 16, 24]) which to a greater or lesser extent implements the high level execution scheme or under and, no goal reusage used in a simulation study of and and or parallelism [26, 29, 31] This scheme combined independent and parallelism (IAP) with or parallelism such that the and goals are recomputed ....
....does not necessarily mean that there are no applications that would be able to exploit both forms of parallelism, especially given that and or parallel systems have not been widely used. ACE and PBA are the first two proposed implementation schemes of the or under and, no goal reusage approach [13]. However, the actual development of these schemes have uncovered some difficulties and complications, which have to some extent delayed the development of actual prototype systems; 2 in fact, PBA is no longer being developed, instead, an alternative to the PBA the SBA [24] which should ....
[Article contains additional citation context not shown here]
G. Gupta and M. V. Hermenegildo. Recomputation based Implementation of And-Or Parallel Prolog. In Proceedings of the International Conference on Fifth Generation Computer Systems 1992, Volume 2, pages 770--782. Institute for New Generation Computing, June 1992.
....would, in principle, belong to every team. A good compromise would be to show only the slaves which are effectively working in a team and this is what Figure 3, right, shows. Thus, we propose a combination of Figure 3, right and Figure 1, middle. Combining RAP with Or parallelism [Kal87, GH92] is somewhat more tricky. Allowing And parallelism under Or parallelism is not (conceptually) a problem, since each Or branch represents a separate universe in which And parallelism evolves independently. The converse situation is more complicated: allowing Or parallelism inside ....
....branches belonging to different And parallel goals have to be joined. This leads, in general, to a lattice structure which is not easy to visualize in an intuitive manner. However this lattice structure can be transformed to a tree by taking a recomputation view of execution, as presented in [GH92] 3.6 Events vs. Time The paradigms in the previous sections can be assumed to use the vertical axis to represent time. This is useful for many purposes. However, we have also found it very useful to enumerate sequentially the events, respecting their precedence in time, and use this number as ....
G. Gupta and M. Hermenegildo. Recomputation based Implementation of And-Or Parallel Prolog. In Proc. of the 1992 International Conference on Fifth Generation Computer Systems, pages 770--782. Institute for New Generation Computer Technology (ICOT), June 1992.
....of the model of parallelism adopted, details of its implementation, and finally the performance figures obtained on a Sequent Symmetry multiprocessor. 2 ACE: An And Or Parallel Execution Model The ACE (And Or Parallel Copying based Execution) model [5] uses stack copying [1] and recomputation [4] to efficiently support combined Or and Independent Andparallel execution of logic programs. ACE represents an efficient combination of Or and independent Andparallelism in the sense that penalties for supporting either form of parallelism are paid only when that form of parallelism is actually ....
....Furthermore, in order to reduce the amount of information transferred during the sharing operation, copying is done incrementally, i.e. only the difference between TA and TB is actually copied. 2. 2 And Parallelism in ACE ACE exploits Independent And parallelism using a recomputation based scheme[4] no sharing of solutions is performed (at the and parallel level) This means that for a query like a,b, where a and b are nondeterministic, b is completely recomputed for every solution of a (as in Prolog) Figure 2 sketches the structure of the computation tree created in the presence of ....
G. Gupta and M. Hermenegildo. Recomputation based Implementation of And-Or Parallel Prolog. In Int'l Conf. on 5th Generation Computer Sys. '92, pages 770--782, 1992.
....in its entirety for every solution of an independent goal to the left. However, we have argued that although adopting the former approach leads to fewer inferences being performed, it requires complex machinery to implement it and, further, supporting Prolog as a user language becomes trickier [GH92, GS92, GH91]. We therefore advocate an approach where even in the presence of or parallelism independent goals to the right are recomputed, just as in sequential Prolog. Taking the approach of re computing independent goals to the right in a CGE, we have developed the notion of a composition tree to ....
....the presence of or parallelism independent goals to the right are recomputed, just as in sequential Prolog. Taking the approach of re computing independent goals to the right in a CGE, we have developed the notion of a composition tree to represent or parallelism and independent and parallelism [GH92] in a single framework. Consider the CGE (true = a b) the classical and or tree for which is shown in figure 2. i) With recomputation, for every alternative of a, the goal b is computed in its entirety. Each separate combination of a and b is represented by what we term as a composition node ....
G. Gupta, "Recomputation based Implementation of And-Or Parallel Prolog," To appear in Proc. of International Conference on Fifth Generation Computer Systems (FGCS '92), Tokyo, Japan, June, 1992.
....using matching instead of general unification [50, 32, 34, 12, 2] In general, these decisions simplify the architecture of the system. 1. 3 ACE: An And Or Parallel System and Execution Model The ACE (And or parallel Copying based Execution) model [21, 41] uses stack copying [1] and recomputation [19] to efficiently support combined or and independent and parallel execution. ACE represents an efficient combination of or and independent and parallelism in the sense that it strives to pay for the penalties for supporting either form of parallelism only when that form of parallelism is actually ....
....ease of programming. In addition, shared memory machines offer a model for the implementor which is simpler and more portable than that offered by distributed memory architectures. 2. 1 Introduction As in the RAP WAM, ACE exploits independent and parallelism using a recomputation based scheme [19] no sharing of solutions is performed (at the and parallel level) This means that for a query like a,b, where a and b are nondeterministic, b is completely recomputed for every solution of a (as in Prolog) For simplicity and efficiency, we adopt the solution proposed by DeGroot [16] of ....
[Article contains additional citation context not shown here]
G. Gupta and M. Hermenegildo. Recomputation based Implementation of And-Or Parallel Prolog. In Int'l Conf. on 5th Generation Computer Sys. '92, pages 770--782, 1992.
....or parallelism, that have been exploited so well in Prolog, could naturally be exploited together. In fact, this is a hard problem, as the difficulties (e.g. supporting full Prolog) faced by several previous proposals [14, 26, 22] do show. Recently an abstract model, called the Composition Tree [12], has been designed that allows efficient realization of systems that combine both forms of parallelism while supporting full Prolog. In this paper we design a novel model, a realization of the C tree, exploiting or and independent and parallelism, which subsumes both the stack copying approach ....
....proposed models [14, 26, 22] Recomputation means that, given a goal a(X) b(Y) where the two subgoals a and b are independent, the solutions for the subgoal b will be recomputed for every solution found for subgoal a. Recomputation has important advantages (they are are discussed at length in [12, 25]) and was fundamental in the design of the C Tree model. In [12] we presented the C tree, along with a few preliminary ideas on how to realize the C tree using an environment representation technique based on stack copying as well as binding arrays. In this paper we show how the complete ....
[Article contains additional citation context not shown here]
G. Gupta and M. Hermenegildo. Recomputation based Implementation of And-Or Parallel Prolog. In Int'l Conf. on 5th Generation Computer Sys. '92, pages 770--782, 1992.
....of the model of parallelism adopted, details of its implementation, and finally the performance figures obtained on a Sequent Symmetry multiprocessor. 2 ACE: An And Or Parallel Execution Model The ACE (And Or Parallel Copying based Execution) model [5] uses stack copying [2] and recomputation [4] to efficiently support combined Or and Independent Andparallel execution of logic programs. ACE represents an efficient combination of Or and independent Andparallelism in the sense that penalties for supporting either form of parallelism are paid only when that form of parallelism is actually ....
....in order to reduce the amount of information transferred during the sharing operation, copying is done incrementally, i.e. only the difference between TA and TB is actually copied. 2. 2 And Parallelism in ACE ACE exploits Independent And parallelism using a recomputation based scheme[4] no sharing of solutions is performed (at the and parallel level) This means that for a query like a,b, where a and b are nondeterministic, b is completely recomputed for every solution of a (as in Prolog) Figure 2 sketches the structure of the computation tree created in the presence of ....
G. Gupta and M. Hermenegildo. Recomputation based Implementation of And-Or Parallel Prolog. In Int'l Conf. on 5th Generation Computer Sys. '92, pages 770--782, 1992.
....organization, some optimizations to the basic model, and finally presenting some performance figures. Keywords: Independent And parallelism, Orparallelism, implementation issues. 1 Introduction The ACE (And Or Parallel Copying based Execution) model [6] uses stack copying [1] and recomputation [5] to efficiently support combined Or and Independent And parallel execution of logic programs. ACE represents an efficient combination of Or and independent And parallelism in the sense that penalties for supporting either form of parallelism are paid only when that form of parallelism is ....
G. Gupta and M. Hermenegildo. Recomputation based Implementation of And-Or Parallel Prolog. In Int'l Conf. on 5th Generation Computer Sys. '92, pages 770--782, 1992.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC