43 citations found. Retrieving documents...
Marina Chen, Young il Choo, and Jingke Li. Crystal: Theory and Pragmatics of Generating Efficient Parallel Code. In Boleslaw K. Szymanski, editor, Parallel Functional Languages and Compilers, Frontier Series, chapter 7, pages 255--308. ACM Press, New York, 1991.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

The Data Field Model - Lisper, Hammarlund (2001)   (Correct)

....the elements must be ordered if the reduction is to be well defined. For lists and one dimensional arrays, there are natural orderings. The situation is less clear for multidimensional arrays and sparse structures. 3 Data Fields, Informally The term data fields is borrowed from Crystal [10]. Our data fields are pairs (f; b) where f is a function and the bound b is a set representation. We denote the set defined by b by ffbgg, and the corresponding predicate by [ b] bool . ffbgg contains indices from which arguments to f may be drawn. f; b) x denotes application of (f; b) to ....

....a model where APL like arrays are defined in this manner, and operations on arrays are formally defined. In [9] space time recursion equations are studied, a kind of recursively defined partial functions which give semantics to systolic arrays. This work later developed into the language Crystal [10, 71], where array like entities called data fields are defined as functions ranging over finite index domains. These domains are constructed from a number of finite base domains (integer intervals, hypercube coordinates, trees) which can be combined using constructors for product, direct sum, function ....

M. C. Chen, Y.-I. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, chapter 7, pages 255--308. Addison-Wesley, 1991.


Programmation Fonctionnelle Et Parallélisme: Une Approche.. - Hains (1994)   (Correct)

....(G machine parall ele, Graphinators [18] ffl L addition de primitives (send, receive, fork etc. a un langage existant pour la programmation concurrente (CDScheme [25] ParaML [2] CML [26] Facile [11] ffl La conception de nouveaux langages fonctionnels sp ecialis es (Alpha [30] Crystal [5], 8 1 2 [12] 5 ffl L addition d op erations et de structures de donn ees data parall eles ( Lisp [28] CMLisp [27] Id [24] DPHaskell [17] Parallel skeletons [9] Parmi celles ci, seule l approche des primitives pour la concurrence est microscopique et les langages qui en sont issus sont ....

M. Chen, Y.-I. Choo, and J. Li, Crystal: Theory and pragmatics of generating efficient parallel code, in Parallel Functional Languages and Compilers, B. K. Szymanski, ed., ACM Press, 1991, ch. 7.


Numerical Time Integration for Air Pollution Models - Verwer, Hundsdorfer, Blom (1998)   (2 citations)  (Correct)

....to arrange optimal use of the variety in available computer architectures. For this purpose, computer science can offer ffl automatic optimization of code (dusty decks) e.g. 8, 28, 98] and ffl application languages with building blocks easily optimized for different architectures (such as [18, 27, 30]) Both ideas are nice, but both have disadvantages. In the first option it is almost always necessary to let the automatic optimization be followed by hand optimization. This makes divergence of the codes likely and requires additional human effort. Moreover, since old numerical methods and an ....

M.C. Chen, Y. Choo and J. Li, Crystal: Theory and pragmatics of generating efficient parallel code, In: Parallel Functional Languages and Compilers, ed. B.K. Szymanski, Frontier Series of ACM Press, Ch. 7, pp. 255--308, 1991.


International Conference on Applications in Parallel and.. - Code Generation In   (Correct)

.... fronts are described by HPF like foralls [8] In our example, the code generated by such a transformation will look like this: 2 Some functional language compilers towards distributed memory architectures follow exactly the same approach, determining temporal and spatial parts of index domains [7]. for t = lb t (m; n) ub t (m; n) forall p = lb p (m; n; t) ub p (m; n; t) S end forall end for In both methods, lower and upper bounds on j and i, or on t and p, may depend on size parameters, i.e. m and n. Since the values of this parameters may not be known at compile time, one needs ....

M. Chen, Y. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers. ACM Press Frontier Series, 1991.


Loop Parallelization in the Polytope Model - Lengauer (1993)   (47 citations)  (Correct)

....received special consideration in the design of Alpha [25] Crystal. The Crystal project at Yale University started out in the mid Eighties with a strong orientation towards the polytope model [10] but has since evolved away from it [11] Now, Crystal is based on a more general equational theory [9]. This permits the treatment of more general source programs at the expense of automation. HiFi. HiFi is being developed at Delft University of Technology. It is an environment for real world applications in algorithm development and architecture design [51] The application domain for which the ....

M. Chen, Y. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, Frontier Series, chapter 7. ACM Press, 1991.


Derivation of Data Parallel Code from a Functional Program - Quinton, Rajopadhye, Wilde (1994)   (6 citations)  (Correct)

....about the compilation of functional languages and summarize the work. 1 2 Introduction to the Alpha Language Alpha was originally designed in the context of systolic array synthesis [LMQ91] It is a pure functional language and as such, is referentially transparent. Alpha is similar to Crystal [CCL91] another functional language. However, Alpha is more restricted than Crystal and is based on denotational semantics which allow the index domain of any Alpha expression to be statically computed. The restrictions in Alpha were designed into the language to guarantee closure on a set of important ....

M. Chen, Y. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B.K. Szymanski, editor, Parallel Functional Languages and Compilers, page Chapter 7. ACM Press, 1991.


Deriving Imperative Code From Functional Programs - Quinton, Rajopadhye, Wilde (1995)   (1 citation)  (Correct)

.... functional languages In recognition of the fundamental relation between regular arrays and systems of affine recurrence equations, the Alpha language was originally developed for the specification and synthesis of regular array architectures[8] It is similar to, but more restrictive than Crystal [2],another functional language based on systems of recurrence equations. An Alpha program is simply a PI n905 4 Patrice Quinton, Sanjay Rajopadhye, Doran Wilde system of affine recurrence equations involving array variables. It is simple enough to allow programs to be statically analyzed, yet rich ....

M. Chen, Y. Choo, and J. Li. Crystal: theory and pragmatics of generating efficient parallel code. In B.K. Szymanski, editor, Parallel Functional Languages and Compilers, page Chapter 7, ACM Press, 1991.


Rate-Control as a Language Construct for Parallel and.. - Peter Mills Jan (1993)   (Correct)

....presented by parallel languages and the diverse low level machine specific languages in which an implementation is to be realized. Much attention has turned towards program transformation as a natural approach to bridge this gap, for example in the efforts of the Crystal equational language [CCL91] variants of Bird Meertens functional formalism [Ski90] the NESL nested data parallel language [Ble92] and z This work was supported under DARPA SISTO contracts N00014 88 K 0458, N00014 91 J 1985, N00014 91 C 0114 administered through ONR, NASA subcontract 550 63 of prime contract ....

M. C. Chen, Y. il Choo, and J. Li, "Crystal: Theory and pragmatics of generating efficient parallel code," in Parallel Functional Languages and Compilers (B. K. Szymanski, ed.), ch. 7, pp. 255--308, ACM Press, 1991.


Confluence of the BSλ-calculus - Loulergue (1999)   (Correct)

....and can be written as librairies. In the next section we present the (flat) BS calculus, which is proved to be confluent. 2 The calculus In this section we introduce an extension of the calculus called the bulk synchronous calculus, or BS , adapting the notion of xappings [SH86] or data fields[CCL91, Lis96, VP92] to BSP in so called direct mode: the parallel data structures are flat and map directly to physical processors. This difference, although apparently minor is crucial: BS programs require no flattening [Ble90, ch. 10] and have complete control of the computation communication ratio. The calculus ....

M. Chen, Y.-Il Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers. ACM Press, 1991.


Hierarchical Collections: An Efficient Scheme to Build an.. - Sato Naohito Matsuoka   (Correct)

.... annotation transparent with regular parallelism [6] Vienna Fortran extra annotation transparent with regular parallelism [7] HPF extra annotation transparent with regular parallelism [8] PANDORE extra annotation transparent with regular parallelism [9] Crystal extra annotation compiler dependent [10] MENTAT mixed in a single class modification may be required [11] pC (old) mixed in a single class modification may be required [12] EPEE Paladin mixed in a single class modification may be required [13] ScaLAPACK mixed in a single class modification may be required [14] Charm mixed ....

Marina Chen, Young il Choo, and Jingke Li. Crystal: Theory and pragmatics of generating efficient parallel code. Parallel Functional Languages and Compilers., chapter 7, pages 255--308, 1991.


Systolic Functional Programming - Du (1994)   (Correct)

....in the systolic matrix multiplication program, there is pipeline communication between the value of variable Aout at a space point representing a PE at a time point t and that of variable Ain at the PE s right neighboring point at time point t 1. 5 Related work The programming language Crystal [CCL91] is another functional language originally designed for systolic array specification. In Crystal, a program consists of a system of recursion equations similar to other functional languages, but it is interpreted differently from the traditional functional interpretation. In Crystal, an ....

M. Chen, Y. Choo, and J Li. Crystal: Theory and pragmatics of generating efficient parallel code. In Parallel Functional Languages and Compilers, pages 255--308. ACM Press, 1991.


Flexible Program and Architecture Specification for.. - Stephan Kindermann.. (1994)   (2 citations)  (Correct)

....adapted (systolic) code based on sophisticated dependence analysis and program transformation techniques. See for example [VP92] MGQS89] Bar90] Lis90] Tse90] Yos88] There are also attempts to use recurrence equations based languages to automatically generate code for SIMD and MIMD systems[CCL91, Szy91] Recurrence equations (having the single assignment property) are also the basis of algorithm specification which we use, forming the body of all function definitions. As illustrated in Fig.5 describing the gauss jordan algorithm, the general structure of our specification language is ....

....the transformation of B[m 1] Elim[B[m] m] we result in a program which can be understood by the target system compiler. 5 Related Work Two recurrence equations based languages designed to automatically generate code for massively parallel (SIMD and MIMD) systems are EPL [Szy91] and CRYSTAL [CCL91] CRYSTAL being a simple functional language which can be manipulated using META Crystal [Yan89] to get optimized versions. The use of higher order functions and skeletons for architecture independent programming is recommended in [DFH 93] and [Col89] also addressing a skeleton based ....

M. Chenand, Y Choo, and J. Li. Crystal: Theory and Pragmatics of Generating efficient parallel Code, chapter 7, pages 255--308. Addison Wesley, 1991.


Implementing Parallel Algorithms based on Prototype.. - Hasselbring.. (1997)   (1 citation)  (Correct)

....Parallel Algorithms based on Prototype Evaluation and Transformation W. Hasselbring University of Dortmund, Computer Science Department, Software Technology, D 44221 Dortmund, Germany P. Jodeleit LVE Verfahrenselektronik GmbH, D 45138 Essen, Germany M. Kirsch Mannesmann Autocom GmbH, Information Systems, D 40547 Dusseldorf, Germany Abstract Combining parallel programming with prototyping is aimed at alleviating parallel programming by enabling the ....

....Parallel Algorithms based on Prototype Evaluation and Transformation W. Hasselbring University of Dortmund, Computer Science Department, Software Technology, D 44221 Dortmund, Germany P. Jodeleit LVE Verfahrenselektronik GmbH, D 45138 Essen, Germany M. Kirsch Mannesmann Autocom GmbH, Information Systems, D 40547 Dusseldorf, Germany Abstract Combining parallel programming with prototyping is aimed at alleviating parallel programming by enabling the ....

[Article contains additional citation context not shown here]

M. Chen, Y. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B.K. Szymanski, editor, Parallel Functional Languages and Compilers, Frontier Series, pages 255--308. ACM Press, 1991.


The ProSet-Linda Approach to Prototyping Parallel Systems - Hasselbring (1998)   (Correct)

....developed for the Proteus language which is based on algebraic specification techniques and category theory to transform prototypes to implementations on specific architectures. For the time being, these transformations are restricted to the data parallel constructs of Proteus. ffl The Crystal (Chen et al. 1991) approach starts from a high level functional problem specification, through a sequence of optimizations tuned for particular parallel machines, leading 11 to the generation of efficient target code with explicit communication and synchronization. This approach to automation is to design a ....

Chen, M., Choo, Y., and Li, J., Crystal: Theory and pragmatics of generating efficient parallel code, in Parallel Functional Languages and Compilers (B. Szymanski, ed.), ACM Press, New York, N.Y., 1991, pp. 255--308.


Automatic Result Verification by Complete Run-Time Checking .. - Lederer, Dumitrescu (2000)   (1 citation)  (Correct)

....Informatik, Universitat Basel, Klingelbergstrasse 50, CH 4056 Basel, Switzerland. 1 Two Stage Programming (2sp) is the first, experimental language embodiment of the coordination model. The SCCM 2sp mainly addresses scientific applications, for which a functional specification is highly suited [7, 29]. The basic ideas of the SCCM 2sp have been already presented in [18, 19] first experimental results concerning efficiency in [10] and a formalization of the 2sp core in [17] However, all of these presentations are based on a preliminary version of 2sp. In the meantime, the language has been ....

....sequential ones. 4.3. Recursive Function Definitions Computations are naturally expressed by recursive function definitions, which are close to their mathematical description. The idea of specifying computations by means of recursive definitions is exploited in the programming languages Crystal [7], EPL [29] and para functional Haskell [13] In all of these languages the compiler is supposed to find an efficient parallelization of the recursive function definitions as well as an efficient (re)use of stores. These languages provide annotations to help the compiler to find an efficient ....

M. Chen, Y. Choo, and J. Li. Crystal: Theory and Pragmatics of Generating Efficient Parallel Code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, pages 255--308. ACM Press, 1991.


The Loop Parallelizer LooPo - Griebl, Lengauer (1996)   (4 citations)  (Correct)

.... calls this horizontal and vertical parallelism [2] 2 Parix TM is an operating system for massively parallel computers with distributed memory by the Parsytec company based on the SPMD programming model [20] There are also larger projects which are not based on the polytope model: Crystal [4] yields target code for a number of machines (iPSC, NCUBE, Connection Machines, i)Warp) The system imposes fewer restrictions on the input, and its use requires significantly more interaction from the user than the systems above. SUIF [24] is the most ambitious of all projects listed here. It ....

M. Chen, Y. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, Frontier Series, chapter 7. ACM Press, 1991.


Software Issues In High-Performance Computing And A.. - Peter Mills Lars (1994)   (Correct)

....strategies are used in these cases to bridge the gap from high level language to machine and so achieve a measure of architecture independence. Several high level parallel languages rely on transformation from high level specification to realize efficient execution. Notable efforts include Crystal [8] and variants of the Bird Meertens functional formalism [21] Another noteworthy effort is Maude [15] a language based on rewriting logic which can be transformed into a parallel sublanguage (Simple Maude) which can then be compiled. In these cases the refinement steps are justified formally ....

Marina C. Chen, Young il Choo, and Jinke Li. Crystal: Theory and pragmatics of generating efficient parallel code. In Boleslaw K. Szymanski, editor, Parallel Functional Languages and Compilers,chapter 7, pages 255--308. ACM Press, 1991.


Models and Languages for Parallel Computation - Skillicorn, Talia (1996)   (51 citations)  (Correct)

....among neighboring cells, so the communication pattern is known statically. This allows efficient and scalable implementations, both on MIMD and SIMD parallel computers [44] Moreover, cost measures can be provided. Another model that takes geometric arrangement explicitly into account is Crystal [50, 204 206]. Crystal is a functional language with added data types, called index domains to represent geometry, 22 that is locality and arrangement. The feature which distinguishes Crystal from other languages with geometric annotations is that index domains can be transformed, and the transformations ....

M. Chen, Y.-I. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B.K. Szymanski, editor, Parallel Functional Languages and Compilers, pages 255--308. ACM Press Frontier Series, 1991.


Concrete Data Structures and Functional Parallel Programming - Hains, Loulergue, Mullins (1997)   (Correct)

....data structure we associate a replicated version called an array structure whose events occur in a finite space of process locations. The array structure s domain of configurations provides a richer structure than the maps from processes to values used for data parallel functional programming [7,14] under the name of data fields. Array structures are a natural generalization of the single program multiple data or SPMD realization of data parallel programming [4] whereby a single program is replicated on every processor. In the array model the program is itself a distributed object rather ....

....set t(i) t (fig Theta C 0 Theta V 0 ) is not in general a state of D(M ) For example fi0; i1; j1; j2g 2 D(Vnat 2 ) but (assuming i 6= j) its projection on location j is not a state of Vnat: event j1 s only enabling is remote. This is precisely how array structures generalize data fields [7,14], by removing the obligation for local parts of dynamic structures to be observable scalar structures. 13 Secondly, because a cell can be enabled either locally or remotely, enablings are not unique even when they were so in M . In the above example i1 j2 and j1 j2 within the same state. It ....

M. Chen, Y.-Il Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, chapter 7. ACM Press, 1991.


A calculus of recursive-parallel BSP programs - Loulergue, Hains, Foisy (1998)   (2 citations)  (Correct)

....(it computes work and depth values) and is therefore, like NESL VCODE, not safe for numerical performance prediction. 2 The calculus In this section we introduce an extension of the calculus called the bulk synchronous calculus, or BS , adapting the notion of xappings [SH86] or data fields [CCL91, VP92, VP93] and extending it with a symmetric parallel composition. The calculus introduces operations both for flat data parallel programming (but with explicit processes in the spirit of BSP) and for a synchronous form of control parallelism. The latter allow straightforward programming of parallel ....

M. Chen, Y.-Il Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, chapter 7. ACM Press, 1991.


Array Structures and Data-Parallel Algorithms - Hains, Mullins (1996)   (1 citation)  (Correct)

....the full flexibility of our model is visible: an array transformation can be given an infinite variety of distributed algorithms whose evaluation and localisation features are recursively defined. Next is an application of a subset of the model to solve an open problem about the Crystal language [7]. The conclusion outlines future developments and related work. 2 Concrete Data Structures This section summarises basic notions about concrete data structures [6] A concrete data structure or CDS [8] is a tuple (C; V; E; where C is a countable set of cells, V is a countable set of values, E ....

....2 Taking advantage of the complete lattice structure of fun Gamma1 max 2 . But to further illustrate the interest of array structures for data parallel semantics, we propose a short solution to a problem left open by the designers of the parallel functional language Crystal (described in [7]) We only use ADScont , not ADSalg . The problem is to give a meaning of an index domain d which is defined recursively using a function f whose domain is precisely d. This is difficult in Crystal because of the separate treatment of index domains and functions over them. But in array semantics ....

[Article contains additional citation context not shown here]

M. Chen, Y.-Il Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, chapter 7. ACM Press, 1991.


Pattern-matching and Rewriting Rules for Group Indexed.. - Giavitto, Michel, Cohen (2002)   (1 citation)  (Correct)

No context found.

Marina Chen, Young il Choo, and Jingke Li. Crystal: Theory and Pragmatics of Generating Efficient Parallel Code. In Boleslaw K. Szymanski, editor, Parallel Functional Languages and Compilers, Frontier Series, chapter 7, pages 255--308. ACM Press, New York, 1991.


The Transformational Derivation of Parallel Programs using.. - Südholt   (Correct)

No context found.

M. Chen, Y. Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers, Frontier Series, chapter 7, pages 255--308. ACM Press, 1991.


Confluence of the BSλ-calculus - Loulergue (1999)   (Correct)

No context found.

M. Chen, Y.-Il Choo, and J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In B. K. Szymanski, editor, Parallel Functional Languages and Compilers. ACM Press, 1991.


Implementation of a Portable Nested Data-Parallel.. - Blelloch, Hardwick.. (1993)   (97 citations)  (Correct)

No context found.

Chen, M., Choo, Y., and Li, J. Crystal: Theory and pragmatics of generating efficient parallel code. In Parallel Functional Languages and Compilers, B. K. Szymanski, Ed. AddisonWesley, Reading, MA, 1991, ch. 7.

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