| K. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett Publishers, 1992. |
....can be developed on an ad hoc basis for each application, integrated into message passing tools, or encapsulated in programming language constructs. We prefer the third approach, and have developed programming language support for the abstractions for both Fortran and the concurrent language PCN [6, 14]. Here, we work with PCN, which is supported by a public domain compiler developed at Argonne National Laboratory and Caltech [15] 1 The rest of the paper is as follows. In Section 2, we present the three atmospheric modeling algorithms used in programming experiments. In Sections 3 and 4, we ....
....and optimization. The language constructs required to support the abstractions are not complex and can in principle be defined for any language. For example, we have defined appropriate extensions for both Fortran and the high level concurrent language Program Composition Notation (PCN) [6, 14]. We choose to work with PCN here, as this already provides elegant representations of virtual channels and lightweight processes and can be extended straightforwardly to support virtual topologies and port arrays. We describe those aspects of the extended PCN language that are relevant to the ....
Chandy, C., and Taylor, S., An Introduction to Parallel Programming, Jones and Bartlett, 1991.
....use of state change and sequencing. These concepts are language independent and have been incorporated into a com mercially available programming system, Strand [21] In this paper, we work with a second generation system in which programs are expressed in a program composition no tation (PEN) [8]. This notation provides a uniform treatment of concurrent composition, non deterministic choice, and sequential programming. In addition, a simple syntax and the use of recursively defined data structures allows PCN programs to be represented concisely as data structures. These data structures ....
....can be executed in any order or in parallel. A consequence of monotonicity and concurrent execution is that it is not important where and when procedures execute. Hence, decisions concerning partitioning, mapping, and granularity can be isolated from the rest of the program design process [8]. Choice. Programs must inevitably choose between alternative actions; this choice is based on the values of variables. We adopt a simple method of specifying program actions that makes such choices explicit and avoids overspecification [16] This is illustrated in the mi himurn procedure. ....
[Article contains additional citation context not shown here]
Chandy, K. M., and Taylor, S., An Introduction to Parallel Programming, Jones and Bartlett, 1991.
....designed with pipelining in mind. This idea, however, has stayed within the context of hardware, and has not been used very much in the realm of computer software. Parallel algorithms have been a force among software designers. Several approaches to parallel programming have been proposed [3], and a variety of programming languages have been developed speci cally for the purpose of writing parallel programs [12, 14] Various models for constructing and reasoning about such systems exist [4, 7] but the reasoning exercise involved is a lot greater than the simpler model of sequential ....
K. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett, Boston, 1992.
....designed with pipelining in mind. This idea, however, has stayed within the context of hardware, and has not been used very much in the realm of computer software. Parallel algorithms have been a force among software designers. Several approaches to parallel programming have been proposed [3], and a variety of programming languages have been developed specifically for the purpose of writing parallel programs [12, 14] Various models for constructing and reasoning about such systems exist [4, 7] but the reasoning exercise involved is a lot greater than the simpler model of sequential ....
K. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett, Boston, 1992.
....MPI [11] and PVM [12] In this paper, we will focus on particular features of aCe C (from now on will refer to it as aCe) with examples. For more details on the language, we refer the readers to see the language reference manual [2] There are many texts that introduce parallel programming [13] [20] Most focus on the basic techniques to emphasize writing applications that can exploit parallelism and be portable [17] PVM and MPI libraries are used for message passing systems and also on shared memory systems. Baker [17] states that knowledge of both PVM and MPI is required to create ....
Chandy, K.M. and Taylor, S., An Introduction to Parallel Programming, Jones and Bartlett Publishers, 1992.
....according to their suitability for a particular architecture and their purported ease of use. For example, communication via shared variables may be suitable for a shared memory machine, while message passing is better adapted to distributed memory. Higher level coordination languages exist [6, 8], which may be easier to use but harder to implement efficiently. To construct concurrent programs, or prove them correct, one must ensure that all required properties hold, regardless of the relative speed of the processes. Perhaps for this reason, concurrent programs require more effort to ....
Chandy, K.M. and Taylor, S. An Introduction to Parallel Programming. Jones and Bartlett, 1991.
....network s point of view, packetization eliminates the extremely long messages and dramatically increases the number of messages at the maximum physical transfer size. Messages below the maximum transfer size are transmitted without resizing. Fourth, a variety of novel programming models such as [9, 7, 12] seek to exploit parallelism at a finer granularity. This typically implies using short messages much more frequently. In addition, a variety of message passing library functions such as global synchronization, reduction operations and multicasts give rise to short messages. Finally, the system ....
M. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett, 1991.
....network s point of view, packetization eliminates the extremely long messages and dramatically increases the number of messages at the maximum physical transfer size. Messages below the maximum transfer size are transmitted without resizing. Fourth, a variety of novel programming models such as [12, 11, 15] seek to exploit parallelism at a finer granularity. This typically implies using short messages much more frequently. In addition, a variety of message passing library functions such as global synchronization, reduction operations and multicasts give rise to short messages. Finally, the system ....
M. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett, 1991. 149
....languages [12] support logic variables or write once variables. A logic variable is initially undefined and it may be assigned a value at most once and by a single designated process, in any computation. Logic variables have been used in place of message communicating primitives ( 1] 14] [3]) In particular, the programming notation PCN by Chandy and Taylor [3] makes a distinction between ordinary program variables called mutables and logic variables called permanents; concurrently executing processes (in one form of process composition) are prevented from changing the shared ....
....A logic variable is initially undefined and it may be assigned a value at most once and by a single designated process, in any computation. Logic variables have been used in place of message communicating primitives ( 1] 14] 3] In particular, the programming notation PCN by Chandy and Taylor [3] makes a distinction between ordinary program variables called mutables and logic variables called permanents; concurrently executing processes (in one form of process composition) are prevented from changing the shared mutables, thus communicating through the permanents only. It can be ....
K. Mani Chandy and Stephen Taylor. An Introduction to Parallel Programming. Jones and Bartlett, Boston, 1992.
....This idea is well known in sequential programming where such abstractions are called design patterns [10] Even in the parallel domain, the idea of pattern abstraction is not new. For instance, it has been recognized for many years that many parallel programs use grid or mesh computations [6,9]. A Mesh design pattern can capture the experience of building parallel programs for data structures consisting of individual elements, where each element computes a new value based on a combination of its current value and the values of a set of neighboring elements. The computation typically ....
....patterns for a particular application. How to select this pattern is not addressed by our research. It is possible for programmers to select a pattern template that is inappropriate for the problem. However, there are several methodologies for finding the best parallel structure for an application [6,9]. In addition, there are parallel design pattern languages (such as [19] which describe a set of patterns that guide programmers to the most appropriate parallel structure for a problem. For clarity of presentation, we have selected a sample problem that can be solved using a single design ....
[Article contains additional citation context not shown here]
K. Mani Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett Publishers, Boston, Massachusetts, 1992.
....such abstractions are called design patterns [10] see the sidebar on design patterns for a brief description) Even in the parallel domain, the idea of pattern abstraction is not new. For instance, it has been recognized for many years that many parallel programs use grid or mesh computations [6,9]. A Mesh design pattern can capture the experience of building parallel programs for data structures consisting of individual elements, where each element computes a new value based on a combination of its current value and the values of a set of neighboring elements. The computation typically ....
....patterns for a particular application. How to select this pattern is not addressed by our research. It is possible for programmers to select a pattern template that is inappropriate for the problem. However, there are several methodologies for finding the best parallel structure for an application [6,9]. In addition, there are parallel design pattern languages (such as [18] which describe a set of patterns that guide programmers to the most appropriate parallel structure for a problem. For clarity of presentation, we have selected a sample problem that can be solved using a single design ....
[Article contains additional citation context not shown here]
K. Mani Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett Publishers, Boston, Massachusetts, 1992. - 23 -
.... concerned with mapping, data distribution, communication, and scheduling to be made separately and to be modified without changing other aspects of a design [15] In this paper, we show how virtual computer constructs are integrated into two compositional parallel programming languages: PCN [9, 16] and Fortran M [14] PCN is a C like language that integrates ideas from concurrent logic programming and imperative programming; Fortran M is a small set of extensions to Fortran. In each case, virtual computers and related constructs have been introduced in a manner that is consistent with the ....
....in the preceding section have been incorporated in the PCN and Fortran M programming languages. In each case, it has proved possible to introduce the concepts in a manner that is consistent with other language concepts. 3. 1 Program Composition Notation Program Composition Notation (PCN) [9, 16] is a high level concurrent programming language with a C like syntax that combines features of concurrent logic languages and imperative languages. Programs are constructed by using three composition operators parallel, sequential, and choice to compose procedure calls, other ....
K. M. Chandy and S. Taylor, An Introduction to Parallel Programming. Jones and Bartlett, 1991.
....It would be the compiler s responsibility to generate the routine based on the type information it has. The nesting properties of the skeletons might be formalised. This formalism would require the employment of a mathematical notation such as operational semantics [34] or axiomatic semantics [35]. Using operational semantics, the properties of combination of skeletons can be de ned in terms of their states and the possible transitions between them. In axiomatic semantics, the meaning of combinations could be de ned by a set of proof rules based on predicate calculus. This would give a ....
K. M. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Barlett, 1992.
....It is a simple and useful specification language which only requires knowledge of temporal operators. The definition of this language is evolutive and new components or concepts may be added if needed. 1.2 Introduction to PCN The PCN language was defined by K. Mani Chandy and Steve Taylor [CT92] and its proof theory is partly based on UNITY s theory [CM88] The main features of the PCN language are presented, as described in [FT91] The PCN syntax is close to C and a PCN program comprises a set of functions which, as in C, can be gathered in libraries. However, the two languages differ ....
K.M. Chandy and S. Taylor. An Introduction to Parallel Programming. Boston, MA: Jones and Bartlett, 1992.
....for programming broad classes of concurrent systems. These languages might be roughly divided into the following categories. ffl Languages with widely translatable logical models, such as Linda s distributed data structures [CGL86] the synchronization variable methods of Strand [FT90] and PCN [CT92] or the data parallel abstraction of the Paralation model [Sab88] Often called coordination languages, these form a harness in which programs in different sequential computation languages can cooperate in parallel [CG91] ffl Languages which incorporate a large variety of parallel primitives, ....
K. Chandy and S. Taylor, An Introduction to Parallel Programming. Jones & Bartlett, 1992.
....semantics for the communication, P 3 A requires a minimal amount of additional training for application programmers of parallel machines, and provides a high degree of architecture independence. The hybrid approach to parallel programming is not new (e.g. Linda [CG89] GLU [JF91] and PCN [CT92] The advantage of our approach over others is that process algebra provides a clean and well understood formal semantics that will permit the automatic verification of the communication and synchronization aspects of P 3 A programs. Process algebra also admits a natural visual representation ....
K. M. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett, Boston, MA, 1992.
....needs mainly read access for contraction. A first implementation of the clause diffusion methodology on a network of Sparcstation, called Aquarius, has been completed. It is built on a modified version of the Argonne prover Otter [McC90] enhanced with a layer of communication written in PCN [CT91] Aquarius features several criteria for allocating the clauses, contraction schemes, as well as scheduling policies, which are designed according to our methodology. Since there is no shared memory among the workstations, each node maintains its own localized contraction set. We have conducted ....
K. M. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett, 1991.
No context found.
K. M. Chandy and S. Taylor, An Introduction to Parallel Programming, Jones and Bartlett, 1991.
No context found.
Chandy L. M. and Taylor S., An Introduction to Parallel Programming, Jones and Bartlett publishers, Boston, 1992.
No context found.
Chandy L. M., Taylor S., An Introduction to Parallel Programming, Jones and Bartlett publishers, Boston, 1992.
No context found.
Chandy L. M., Taylor S., An Introduction to Parallel Programming, Jones and Bartlett publishers, Boston, 1992.
No context found.
Chandy L. M., Taylor S., An Introduction to Parallel Programming, Jones and Bartlett publishers, Boston, 1992.
No context found.
K. Chandy and S. Taylor. An Introduction to Parallel Programming. Jones and Bartlett Publishers, 1992.
No context found.
K. Mani Chandy and Stephen Taylor. An Introduction to Parallel Programming. Jones and Bartlett, 1992. 205
No context found.
Chandy, M. and Taylor, S., An Introduction to Parallel Programming. Jones and Bartlett Pub., Inc., Boston, 1992.
First 50 documents Next 50
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