Abstract:This paper describes how Crystal, a language based on familiar mathematical notation and lambda calculus, addresses the issues of programmability and performance for parallel supercomputers. Some scientifc programmers and theoreticians may ask, "What is new about Crystal?" or "How is it different from existing functional languages?" The answers lie in its model of parallel computation and a theory of parallel program optimization, and we examine this in the text to follow. We illustrate the power of our approa… Show more
“…The meaning of tag-tuple is t(u(t)), where u(t) is the t-th element of the tuple u and t is the injection function from the domain dt,0 !5 t < n, to the summed domain do +... + d,-. 1 The syntax for the tagged expression is somewhat unconventional, but it provides more information for the analysis performed by the parallelizing compiler. It also makes expressions that depend on the value of the tag more compact, as is shown in the defintion for f3 in the example in section 1.6.…”
“…The meaning of tag-tuple is t(u(t)), where u(t) is the t-th element of the tuple u and t is the injection function from the domain dt,0 !5 t < n, to the summed domain do +... + d,-. 1 The syntax for the tagged expression is somewhat unconventional, but it provides more information for the analysis performed by the parallelizing compiler. It also makes expressions that depend on the value of the tag more compact, as is shown in the defintion for f3 in the example in section 1.6.…”
“…which contains four vertices (11,12) Therefore, based on the relative values of x, y and c, there are four possible vertices of Q from a vertex (X, y) of P(S 1 , S2). Note that three of the four possible vertices of Q are parameterized with unknown scalar c. So the basic idea is that the search space of the partitioning hyperplanes can be bounded if parameterized vertices and extremal rays are Used.…”
Section: Basic Ideamentioning
confidence: 99%
“…Much work in the area of mapping recurrence equations to systolic architectures [11,12,15,17,19,24,26,25,27,28,29,30], in contrast, focuses on developing algorithms for loop skewing.…”
“…These include the Superb project at Bonn University [26], Callahan and Kennedy's work at Rice University [3], the Kali project at Purdue University [12,13], and the DINO project at Colarado University [23]. The Crystal project at Yale University [4] is also based on the same idea, but is targeted for the functional language Crystal, as opposed to the other projects which have concentrated on imperative languages, mainly extensions of Fortran. By and large, the task of determining suitable data partitions, which may be regarded as the most crucial and challenging of all tasks in the whole process has been left completely to the user, at least in the initial stages of these projects.…”
Section: R Elated Workmentioning
confidence: 99%
“…Clearly there is a need for parallelizing compilers that would relieve the programmer of this burden. Hence the area of parallelizing compilers for distributed memory machines has seen considerable research activity during the last few years [3,12,26,4,23,13].…”
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.