29 citations found. Retrieving documents...
K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-Parallelism in Muse. In International Journal of Parallel Programming, 19(6), 1990.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

A Methodology for the Management of Order-Sensitive.. - Villaverde.. (2002)   (Correct)

....In our previous research [29] we have developed a general methodology, called Stack Splitting, which meets the above criteria. Stack splitting (and its variants) is an evolution of the stack copying method used in a variety of parallel logic and constraint systems e.g. MUSE, YAP, and Penny [1, 22, 14]. The methodology has been practically validated in the context of PALS [30J the first ever or parallel Prolog system on Beowulf platforms and Jmodels 1For example, 11] argues that non monotonic logics provide asymptotically optimal representations of various NP problems. 18] a ....

....proposed. Most of the schemes proposed rely on optimized traversals of the tree, where the computation attempting an order sensitive step walks up its branch in the computation tree verifying the termination of all the branches to its left. These approaches can be effectively realized [10, 1, 26] in the context of a shared memory system and in presence of a shared representation of the computation tree. The shared representation of the computation tree is required to check for the status of other executions without explicit inter process communication. Optimal algorithms for shared memory ....

[Article contains additional citation context not shown here]

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-Parallelism in Muse. In International Journal of Parallel Programming, 19(6), 1990.


Side-effects in PloSys OR-parallel Prolog on distributed.. - Morel Briat Chassin (1996)   (2 citations)  (Correct)

....more rapidly than the most efficient sequential Prolog systems and that, in the worst case (intrinsically sequential programs) parallel execution is not slower than sequential execution. Most OR parallel logic programming systems were implemented on shared memory symmetric multiprocessors [2, 18]. Some prototypes were also implemented on distributed memory systems but they do not include the usual Prolog side effects [3, 4, 15] The objective of PloSys is to build a Prolog like OR parallel logic programming system for distributed memory parallel architectures. Prolog like means that ....

....in such conditions should be reversible either by restoring the previous state of computation, or by performing the side effect in some cache that will be cleared if the side effect is not to be validated. 3.1. Maintenance of the sequential order Solutions adopted in shared memory systems [12, 2] cannot be used in PloSys. These solutions demand the exploration of the Prolog search tree to identify the left most worker of the tree. This approach would require the use of a large number of messages in a distributed memory architecture. Instead, our approach is based on keeping the sequential ....

[Article contains additional citation context not shown here]

K.A.M. Ali and R. Karlsson. Full prolog and scheduling or-parallelism in muse. International Journal of Parallel Programming, 19(2):445--475, december 1990.


YapOr: an Or-Parallel Prolog System based on Environment.. - Rocha, Silva, Costa (1997)   (2 citations)  (Correct)

....search. Designers of or parallel systems must address two main problems, namely scheduling and variable binding representation. In or parallel systems, available unexploited tasks arises irregularly and thus, careful scheduling is required. Several strategies have been proposed to this problem [5, 1, 4, 15, 14]. The binding representation problem is a fundamental problem that arises because the same variable may receive different bindings in different or branches. A number of approaches [9] have been presented to tackle the problem. Two successful ones are environment copying, as used in Muse [2] and ....

....and demonstrate that the low overheads and good parallel speedups are in fact repeatable for a new system in a very different architecture. The implementation of or parallelism in YapOr is largely based on the environment copying model as first introduced by Ali and Karlson in the Muse system [2, 1, 10]. We chose the environment copying model because of the simplicity and elegance of its design, which makes it simpler to adapt to a complex Prolog system such as Yap, and because of its efficiency as Muse has consistently demonstrated less overheads then competing or parallel systems such as ....

[Article contains additional citation context not shown here]

K. A. M. Ali and R. Karlsson. Full Prolog and Scheduling OR-Parallelism in Muse. International Journal of Parallel Programming, 19(6):445--475, Dec. 1990.


Parallel Symbolic Computation in ACE - Pontelli, Gupta (1995)   (1 citation)  (Correct)

....about 20 of them can be found in [31] These models differ in the technique they employ for solving the problem of environment representation. The ACE system tackles the or parallelism implementation issues using a model called stack copying, originally developed for the Muse or parallel system [1, 2]. The stack copying model assumes a number of extended sequential Prolog engines, called workers, each with its own local address space, and some global space shared by all workers. A worker consists of two components: the engine, which performs the actual Prolog work, and the scheduler. The ....

....are guaranteed that each agent will have a local copy of all the environments thus avoiding any conflicts during the binding process. Furthermore, the process of performing the copying operation can be made extremely efficient by introducing various optimizations (e.g. incremental stack copying [2]) Figure 4 shows an example of using stack copying during the execution of the previously mentioned planner program. The ACE system controls the granularity of jobs at run time by avoiding sharing very small tasks. The idea is that when a busy processor reaches a situation in which it has only ....

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


On the Complexity of Parallel Implementation of Logic Programs .. - Pontelli, al. (1997)   (2 citations)  (Correct)

....logic programs can be used as a source of implicit parallelism. Two major forms of parallelism can be identified [3] ffl And Parallelism (AP) 9, 15] which arises from don t care non determinism; given a goal, several subgoals can be selected for simultaneous reduction. ffl Or Parallelism (OP) [1, 13]: which arises from don t know non determinism. Given a subgoal, the multiple clauses whose heads unify with it can be solved in parallel. A major research direction in parallel logic programming has been to design parallel implementations of Prolog [3, 9, 1, 13] This implies that the parallel ....

....reduction. ffl Or Parallelism (OP) 1, 13] which arises from don t know non determinism. Given a subgoal, the multiple clauses whose heads unify with it can be solved in parallel. A major research direction in parallel logic programming has been to design parallel implementations of Prolog [3, 9, 1, 13]. This implies that the parallel ex ecution mechanisms have to be designed in such a way that a user sees the same externally observable behaviour during parallel execution as is observed during sequential Prolog execution. We say that such a parallel system preserves Prolog semantics. Thus, in a ....

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


On the Complexity of Or-Parallelism - Ranjan, PONTELLI, GUPTA (1999)   (1 citation)  (Correct)

.... of dereference is O(t(N) lg t(N) N t(N) The expand operation, on the other hand, has a worst case time complexity O(t(N) per operation (occurring at the time of table creation) On the Complexity of Or Parallelism 19 Choosing t(N) p N the total cost 4 is O( p N lg N ) [ 2 ] An O(N 1 3 ) Solution: The above scheme can be improved by making use of the solution to the ancestor problem the problem of determining if one node is ancestor of the other in a dynamically growing tree. This is a well studied problem with very efficient solutions 10, 16, 21, 34, 38) ....

) Ali, K.A.M. and Karlsson, R. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


Stack-splitting: A Simple Technique for Implementing.. - Gupta, Pontelli (1999)   (1 citation)  (Correct)

....arises when two or more goals in the body of a clause have a common variable and are executed in parallel. Research on parallel LP has been going on for almost 20 years. Significant progress has been made and many implementation techniques devised that have led to efficient parallel systems [27, 24, 1, 18, 20, 17, 16]. Most research so far has focused on techniques aimed at shared memory multiprocessors (SMMs) Relatively fewer efforts [11, 2, 8, 7, 6] have been devoted to implementing LP systems on distributed memory multiprocessors (DMMs) Out of these efforts only a very small number have been implemented ....

....applied to other types of LP systems, such as constraint logic programming systems. In addition, it can be efficiently implemented on shared memory as well as distributed memory architectures. On SMMs we anticipate that the method s performance will be comparable to that of regular stack copying [1] our prototype implementation shows that our method s performance is, in fact, better. The real benefit of the method will be apparent on DMMs, on which efficient implementation becomes possible. The ability to reuse the same technology on both SMMs and DMMs is also a key component to allow the ....

[Article contains additional citation context not shown here]

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


Cuts And Side-Effects In And-Or Parallel Prolog - Gopal Gupta And (1996)   (3 citations)  (Correct)

....preserving Prolog sequential semantics is hard. Clearly, although the dynamic scheme involves some runtime overhead, it is better than the static approach in that it exploits more parallelism. 6 Various techniques have been proposed for efficiently determining when a branch becomes leftmost [1, 20, 3, 6, 29, 4] for different underlying or parallel models. Arguably, the techniques developed for the Aurora system [21] have been the most well researched and successful [16, 6, 29, 17] To determine if a branch containing a node is leftmost in the entire tree, the following technique is used. For each node ....

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


ACE: A High-Performance Parallel Prolog System for.. - Pontelli, Gupta..   (Correct)

....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 exploited. Thus, in the presence of only or parallelism, execution in ACE is exactly as in the MUSE [2] system a stack copying based purely Or parallel system. In the presence of only independent And parallelism, execution is exactly like the Prolog [6] system a recomputation based purely And parallel system. This efficiency in execution is accomplished by introducing the concept of teams of ....

....This efficiency in execution is accomplished by introducing the concept of teams of processors and extending the stack copying techniques of MUSE to deal with this new organization of processors. 2. 1 Or Parallelism in ACE ACE exploits Or parallelism by using a stack copying approach (like MUSE [1, 2]) In this approach, a set of processing agents (processors in the case of MUSE, teams of processors in the case of ACE as explained later) working in or parallel maintain a separate but identical address space (i.e. they allocate their data structures starting at the same logical addresses) ....

Khayri A. M. Ali and Roland Karlsson. Full Prolog and Scheduling Or-Parallelism in MUSE. International Journal of Parallel Programming, 19(6): 445-- 475, December 1990.


A Task Scheduling Algorithm for Parallel Logic Programming Systems - Tao, Ju (2000)   (Correct)

....when the subgoals in the clause body do not affect each other (there are no variables in common) dependent And Parallelism arises when nonindependent goals are executed in parallel. Some exploitation of parallelism in prolog has concentrated on extracting only one of the two forms of parallelism [10, 14, 9, 16, 13, 6, 1] and some on combination of the two [15, 8, 5, 11, 3] But in whichever parallel logic system the case is the same: the subtask (subgoal) can fork their own subtasks before join and thus there may exist many subtasks at the same time which come from different layers of the search tree and are ....

K.A.M. Ali and R. Carlsson. Full prolog and scheduling OR-parallelism in muse. International Journal of Parallel Programming, 19(6):445--475, 1990.


Optimal Implementation of And-Or Parallel - Prology Gopal Gupta   (Correct)

....approach also rules out the possibility of taking dusty decks of existing Prolog programs and running them in parallel. In addition, some parallelism may also be lost since parts of the program that contain side effects may also be the parts that contain parallelism. Systems such as Aurora, Muse [HCC88, LWH90, AK91], and Prolog [HG90, MH89, CC89] have followed a different approach they exploit parallelism completely implicitly. Thus they can speed up existing Prolog applications with minimal or no rewriting. We contend that the same can be done for systems that combine independent and and ....

....b is the branch containing the cut) can be pruned immediately. 19 The central question now is how to keep track of the leftmostness property of or branches, i.e. how to efficiently check if a branch containing a given node is leftmost. Various techniques have been proposed for this purpose. [A87, KPS88, AK91, BM91, S91]: These techniques essentially keep track of the root node of the subtree in which it is leftmost. This root node is called the subroot node [S91] If the subroot node is identical to the root node of the or tree, then the node is in a leftmost branch. 5.2. Implementing Side effects and Cuts in ....

K. Ali, R. Karlsson, "Full Prolog and Scheduling Or-parallelism in Muse." In International Journal of Parallel Programming, 1991, Vol 19, No. 6, pp. 445--475. 24


Paged Binding Array: Environment Representation for And-Or.. - Gupta (1991)   (Correct)

....parallelism may also be lost since parts of the program that contain side effects may also be the parts that contain parallelism. It has been shown that or parallelism and independent and parallelism can be exploited in full Prolog completely implicitly (for example, the Aurora and Muse System [HCC88, LWH90, AK91], and the Prolog system [HG90, MH89, CC89] We contend that the same can be done for systems that combine independent and and or parallelism. We present techniques for incorporating side effects in and or parallel systems to execute full Prolog in a companion paper [GS91] In this paper we ....

K. Ali, R. Karlsson, "Full Prolog and Scheduling Or-parallelism in Muse," To appear in International Journal of Parallel Programming, 1991.


And-Or Parallel Prolog: A Recomputation Based Approach - Gupta, Hermenegildo, al. (1993)   (1 citation)  (Correct)

....may also be lost since parts of the program that contain side effects may also actually be the parts that contain parallelism. It has been shown that or parallelism and independent and parallelism can be exploited in full Prolog completely implicitly (for example, in the Aurora and Muse Systems [HC88, LWH90, AK91], and in the Prolog system [HG90, MH89, CC89] We argue that the same can be done for systems that combine independent and and or parallelism and that will be one of the design objectives of the approach presented in this paper, i.e. aiming towards facilitating the support of the full Prolog ....

K. Ali, R. Karlsson, "Full Prolog and Scheduling Or-parallelism in Muse." In International Journal of Parallel Programming, 1991, Vol 19, No. 6, pp. 445--475.


Or-Parallelism within Tabling - Rocha, Silva, Costa (1999)   (3 citations)  (Correct)

....thus simplifying initial implementation issues. The implementation framework is based on YapOr [9] an or parallel system that extends Yap s sequential execution model to exploit implicit orparallelism in Prolog programs. YapOr is based on the environment copy model, as first implemented in Muse [1]. We describe the main issues that arise in supporting tabling and its parallelization through copying. The implementation of tabling is largely based on the XSB engine, the SLG WAM, however substantial differences exist in particular on the algorithms for restoring a computation, determining the ....

....kind of operations CAT introduces. In this regard, the OPT approach offers some interesting advantages. It enables different combinations for or parallelism and tabling, giving implementors the highest degree of freedom. For instance, one can use the SLG WAM for tabling, and environment copying [1] or binding arrays [5] for or parallelism. Moreover, the OPT approach reduces to a minimum the overlap between orparallelism and tabling, as we only have a tabling system extended with an or parallel component. In TOP, we have a standard Prolog system extended with a tabling or parallel ....

[Article contains additional citation context not shown here]

K. A. M. Ali and R. Karlsson. Full Prolog and Scheduling OR-Parallelism in Muse. Intern. Journal of Parallel Programming, 19(6), Dec. 1990.


Cuts and Side-Effects in And-Or Parallel Prolog - Gopal Gupta Itor (1996)   (3 citations)  (Correct)

....while preserving Prolog sequential semantics is hard. Clearly, although the dynamic scheme involves some runtime overhead, it is better than the static approach in that it exploits more parallelism, Various techniques have been proposed for efficiently determining when a branch becomes leftmost [2, 19, 4, 6, 25, 5] for different underlying or parallel models. Arguably, the techniques developed for the Aurora system [20] have been the most well researched and successful [15, 6, 25, 16] To determine if a branch containing a node is leftmost in the entire tree, the techniques developed for Aurora use the fact ....

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


PARCS: An MPP-Oriented CLP Language - Konno, Nagatsuka, KOBAYASHI.. (1994)   (1 citation)  (Correct)

.... N, Y) nqueen(N, X) indom(N, N, X) alldifferent(X) queens(X) queens( queens( X Y] noattacks(X, Y) queens(Y) noattacks(X, Y) noattacks(X, Y, 1) noattacks(X, N) noattacks(X, Y Z] N) Y N =X, Y N =X, noattacks(X, Z, N 1) Figure 1: An N queens program : nqueen(4,[2,4,1,3]) yes. nqueen(N, 2,4,1,3] yes. N = 4 : nqueen(4,X) yes. X = 2,4,1,3] X = 3,1,4,2] nqueen(N,X) yes. N = 0 X = N = 1 X = 1] N = 4 X = 2,4,1,3] N = 4 X = 3,1,4,2] N = 5 X = 2,5,3,1,4] Figure 2: Execution results of the N queens program Since a goal and a constraint ....

....N, X) alldifferent(X) queens(X) queens( queens( X Y] noattacks(X, Y) queens(Y) noattacks(X, Y) noattacks(X, Y, 1) noattacks(X, N) noattacks(X, Y Z] N) Y N =X, Y N =X, noattacks(X, Z, N 1) Figure 1: An N queens program : nqueen(4, 2,4,1,3] yes. nqueen(N,[2,4,1,3]) yes. N = 4 : nqueen(4,X) yes. X = 2,4,1,3] X = 3,1,4,2] nqueen(N,X) yes. N = 0 X = N = 1 X = 1] N = 4 X = 2,4,1,3] N = 4 X = 3,1,4,2] N = 5 X = 2,5,3,1,4] Figure 2: Execution results of the N queens program Since a goal and a constraint respectively correspond to a ....

[Article contains additional citation context not shown here]

K. A. M. Ali and R. Karlsson. Full Prolog and Scheduling Or-Parallelism in Muse. International Journal of Parallel Programming, 19(6):445--475, 1990.


A New Implementation Scheme for Combining And/Or Parallelism - Shen   (Correct)

....have been proposed and implemented. Although many of the early proposals exploited both forms of parallelism (e.g. 9, 20, 36, 11, 15] many of the more recent schemes, especially those that have been successfully implemented, have tended to concentrate on either and or or parallelism (e.g. [21, 1, 18, 5, 28]) probably because of the complexities and difficulties in efficiently implementing both forms of parallelism together. One system that has been relatively successful in exploiting both forms of parallelism is Andorra I [25] but the and parallelism is limited to determinate goals only, with ....

K. A. M. Ali and R. Karlsson. Full Prolog and Scheduling Or-Parallelism in Muse. International Journal of Parallel Programming, 19(6):445--475, December 1990.


ACE: And/Or-parallel Copying-based Execution of Logic.. - Gupta, Hermenegildo.. (1991)   (1 citation)  (Correct)

....a and steals the second alternative from b in P1. Therefore, before P2 can proceed, it needs to create on its stacks the state that existed in P1 at the time the choicepoint corresponding to b was created. To do so it copies P1 s stacks. The copying and restoring of state can be done in three ways [3] (Figure 7) i) Total: copy the entire stacks of P1 (everything from the root to the bottom most node along branch 1) then backtrack until choicepoint b is reached. Thus, the hatched, gray, and the black shaded segments of P1 s stack in Figure 7 will be copied; ii) Incremental: copy only ....

....be leftmost with respect to the root of the whole computation tree. In the rest of this section we present a concrete technique for determining when a sep s turn for execution has come during and or parallel execution. The techniques make use of techniques developed for Prolog [7, 21, 5] MUSE [3], and Aurora [9] For simplicity, and without loss of generality, we assume that when a processor reaches a sep it repeatedly performs the above check until it succeeds (thus the processor busy waits rather than suspends) However, suspension would be used in practice 12 so that the processor ....

[Article contains additional citation context not shown here]

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


Implementation of an Event Driven Scheme for Visualizing.. - Gomez Carro   (3 citations)  (Correct)

....of VisAndOr, because it is still being improved and open to the appearance of new parallel execution paradigms. In particular, in this paper we concentrate on the capabilities of the tool for analyzing the parallel execution of the MUSE, Aurora, Andorra I, and Prolog systems [AK90b, AK90a, Sze89, SCWY90, SCWY91, HJ90, Her86, HG91] The rest of this paper is structured as follows: in Section 2 there is a brief overview of some existent approaches to parallel process visualization, together with a description of the VisAndOr approach. In Sections 3, 4 and 5 the visualization of the ....

....tree. The entities which perform the parallel exploration of the or branches are called workers. Each worker is a complete WAM with extensions to allow parallelism. Two models will be used to show the VisAndOr approach to or parallelism visualization: the MUSE model, developed at SICS [AK90b, AK90a] and the Aurora system, developed at the University of Bristol [Sze89] Results (from the purely visualization point of view) are quite similar in both cases. 3.1 VisAndOr and or parallelism The representation of or parallelism in VisAndOr takes the form of a tree (Figure 1) in which the whole ....

[Article contains additional citation context not shown here]

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1990. Vol. 19, No. 6, pp. 445--475.


&ACE: The And-parallel Component of ACE (A Progress.. - Pontelli, Hermenegildo, ..   (Correct)

....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 actually exploited. Thus, in the presence of only Or parallelism, execution in ACE is exactly as in the MUSE [2] system a stack copying based purely Or parallel system. In the presence of only independent And parallelism, execution is exactly like the Prolog [7] system a recomputation based purely And parallel system. This efficiency in execution is accomplished by introducing the concept of teams of ....

....kill and redo signals, and some optimizations implemented in the system. Section 5 concludes the report, presenting some results obtained by executing a set of well known benchmarks in and parallel. 1. 1 Or Parallelism in ACE ACE exploits Or parallelism by using a stackcopying approach (like MUSE [2]) In this approach, a set of or agents (workers in the case of MUSE, teams in the case of ACE as explained later) maintain a separate but identical address space (i.e. they allocate their data structures starting at the same logical addresses) Whenever an or agent A is idle, it will start ....

K.A.M. Ali and R. Karlsson. Full Prolog and Scheduling Or-parallelism in Muse. International Journal of Parallel Programming, 1991. 19(6):445--475.


A High Performance OR-parallel Prolog System - Karlsson (1992)   (15 citations)  Self-citation (Karlsson)   (Correct)

....written by me and the second one by me with Khayri as co author. The aim of those two chapters is to describe the actual implementation of the Muse system in such detail that it is possible to duplicate the work. The six papers included in this thesis were carefully selected from a set of papers [6, 7, 5, 9, 8, 11, 12, 10, 57, 58, 53] in order to give a comprehensive description of the Muse system. In what follows I give a very brief summary of the subject and main results of each of the six papers. Ch 3 The Muse Approach to OR parallel Prolog: A revised version of a published paper [6] presenting the Muse model. It ....

....Symmetry) and on a NUMA (Non Uniform Memory Access) machine. It also compares the Muse results with the Aurora results. The main conclusion is that the performance of the Muse system is very good. Ch 4 Full Prolog and Scheduling OR parallelism in Muse: A revised version of a published paper [5] presenting how to implement full Prolog in Muse and also presenting the scheduling principles used in the current version of Muse. The implementation is very thoroughly analyzed using a large set of benchmarks as in the previous paper. The main conclusion is that the good performance of the ....

[Article contains additional citation context not shown here]

Khayri A. M. Ali and Roland Karlsson. Full Prolog and Scheduling ORparallelism in Muse. International Journal of Parallel Programming, 19(6):445 -- 475, December 1990.


Parallel Execution of Prolog Programs: A Survey - Gupta, Ali, Carlsson, al. (1995)   (10 citations)  Self-citation (Ali)   (Correct)

....arises when a subgoal can unify with heads of more than one clause. In such a case the bodies of these clauses can be executed in parallel with each other giving rise to or parallelism. To take an example, consider the program for solving the 8 queens problem: queens(Qs) queens(Qs, [1,2,3,4,5,6,7,8]) queens( queens( X Xs] Placed, Values) delete(X, Values, Newvalues) noattack(X, Placed) queens(Xs, X Placed] Newvalues) delete(X, X Xs] Xs) delete(X, Y Ys] Y Zs] delete(X, Ys, Zs) noattack(X, Xs) noattack(X, Xs, 1) noattack( noattack(X, ....

....value using the address of the variable and locates the proper bucket in the hash table. It then traverses the linked list until it finds the correct value. Notice how separate environments are maintained by sharing the linked list of bindings in the hash tables. MUSE Method In the MUSE method [4, 5] a separate environment is maintained by each processor in which it can write without causing any binding conflicts. In MUSE even unconditional bindings are not shared, as they are in other methods described above. When an idle processor P2 picks an untried alternative from a choicepoint created ....

[Article contains additional citation context not shown here]

Khayri A. M. Ali and Roland Karlsson. Full Prolog and Scheduling Or-Parallelism in MUSE. International Journal of Parallel Programming, 19(6): 445--475, December 1990.


Scheduling Speculative Work in MUSE and Performance Results - Ali, Karlsson (1992)   (8 citations)  Self-citation (Ali Karlsson)   (Correct)

....from the left of the search tree. Speculative tasks could be ordered globally or just in a subtree. Another important issue is how often workers should voluntarily suspend their work if it is deemed too speculative and instead share less speculative work. The earlier schedulers for the Muse [2] and the Aurora OR parallel Prolog systems [5, 7, 8, 9] did not distinguish between speculative and non speculative work. An idle worker searches for work according to a specific strategy and will complete its current piece of work before seeking new work. Using such schedulers for programs that ....

.... two different strategies: one for idle workers looking for work (default strategy) and the other for periodically voluntarily suspended workers (actively seeking the leftmost available work strategy) The default strategy is similar to the one used in the previous version of the Muse scheduler [2]. It is based on the principle that when a worker is idle, its next piece of work will be taken from the bottommost (i.e. youngest) node in the richest branch of a set of active branches. When the work at the youngest node is exhausted, the worker will find more work by backtracking to the next ....

[Article contains additional citation context not shown here]

Khayri A. M. Ali and Roland Karlsson. Full Prolog and Scheduling Or-Parallelism in Muse. International Journal of Parallel Programming, pages 445--475, Vol. 19, No. 6, December 1990.


The Engine-Scheduler Interface used in the Muse OR-parallel.. - Karlsson, Ali (1992)   (1 citation)  Self-citation (Ali Karlsson)   (Correct)

....and Prolog engines based on the WAM. The interface has been implemented for the SICStus Prolog engine (version 0. 6) 5] and tested on a number of multiprocessor machines (and Sun workstations) In this document, we assume that the reader is familiar with the WAM [8] and the Muse approach [2, 1]. We also recommend reading the paper [6] describing the actual Muse implementation. In Muse, a number of workers (processes) explore OR parallelism in a Prolog search tree. Each worker has two components an engine, which executes Prolog code, and a scheduler, responsible for distributing the ....

Khayri A. M. Ali and Roland Karlsson. Full Prolog and Scheduling ORparallelism in Muse. International Journal of Parallel Programming, 19(6):445 -- 475, December 1990.


How to Build your own OR-parallel Prolog System - Roland Karlsson (1992)   Self-citation (Karlsson)   (Correct)

....Prolog using the Muse execution model. It discusses and describes the implementation techniques used in the current Muse system. This paper can also be seen as an introduction to the Muse interface paper [17] Here we assume the reader is familiar with the WAM [26] and with the Muse model [3, 2]. We start in Section 2 giving some terminology used in this paper. Section 3 describes our layered approach for gradually extending any sequential Prolog system to an OR parallel (full) Prolog system. Sections 4, 5, and 6 show how to extend a sequential Prolog system to a OR parallel (pure) ....

....delayed release) if (count register = 0) load register = computeload( clear request for delayed release; Figure 22: Extensions of the Sch Check( macro (Figure 8 (page 11) and the Sch Set Load( macro (Figure 9 (page 12) to implement delayed release. tail in the scheduler paper [2]. I have chosen to just give the outline of the scheduler loop used in the current Muse scheduler. We have found that it is hard to make significant improvements over the previously described scheduler loop but two optimizations are important. The first one is finding shared work in other ....

[Article contains additional citation context not shown here]

Khayri A. M. Ali and Roland Karlsson. Full Prolog and Scheduling ORparallelism in Muse. International Journal of Parallel Programming, 19(6):445 -- 475, December 1990.

First 50 documents

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