Matches in SemOpenAlex for { <https://semopenalex.org/work/W1578161803> ?p ?o ?g. }
- W1578161803 abstract "Practical parallel programming demands that the details of distributing data to processors, as well as the details of interprocessor communication be managed by the compiler. These tasks quickly become too difficult for a programmer to do by hand, for all but the simplest parallel programs. There have been several approaches to solve this problem, however many parallel languages still require the programmer to manage much of the parallelism, and attempts at recovering parallelism from sequential programs have met with limited success.In this dissertation, I demonstrate the synthesis of parallel imperative code from algorithms written in a functional language. Functional languages implicitly support both the expression of concurrency and communication. Thus, the programmer is freed from having to explicitly manage the parallelism. A synthesizing compiler is described for a functional language called ALPHA which is a language based on systems of affine recurrence equations. ALPHA was designed to specify algorithms for regular array architectures. I show how to produce efficient code for other architectures.I discuss two problems that had to be solved before implementing the translator. The first is how to allocate 1-dimensional storage for a polyhedron, and the second is how to scan a polyhedron with nested loops. Using these tools, I demonstrate a naive translator which compiles ALPHA into imperative, but not necessarily efficient, sequential C-code.I then discuss an improved translation methodology for transforming Alpha to efficient imperative code. Using the information derived from static analysis, ALPHA can be transformed into a form suitable for generating imperative parallel code through a series of provably correct program transformations. I show that the kinds of analysis needed to generate efficient code for array based functional programs are in fact a generalization of dependency analysis, usage analysis, and scheduling techniques used in systolic array synthesis. The compilation steps described include scheduling, alignment, processor allocation, loop nest generation, and code generation." @default.
- W1578161803 created "2016-06-24" @default.
- W1578161803 creator A5075498510 @default.
- W1578161803 date "1996-10-03" @default.
- W1578161803 modified "2023-09-26" @default.
- W1578161803 title "From alpha to imperative code: a transformational compiler for an array-based functional language" @default.
- W1578161803 cites W1500590019 @default.
- W1578161803 cites W1518413278 @default.
- W1578161803 cites W1521571223 @default.
- W1578161803 cites W1536051636 @default.
- W1578161803 cites W1547562880 @default.
- W1578161803 cites W1551170326 @default.
- W1578161803 cites W1582257052 @default.
- W1578161803 cites W1582331760 @default.
- W1578161803 cites W1607382035 @default.
- W1578161803 cites W1612551514 @default.
- W1578161803 cites W161315898 @default.
- W1578161803 cites W1664541497 @default.
- W1578161803 cites W1810875045 @default.
- W1578161803 cites W1837259116 @default.
- W1578161803 cites W1972784701 @default.
- W1578161803 cites W1976811743 @default.
- W1578161803 cites W1986388229 @default.
- W1578161803 cites W1987188645 @default.
- W1578161803 cites W1991227098 @default.
- W1578161803 cites W1995270665 @default.
- W1578161803 cites W2002252837 @default.
- W1578161803 cites W2017032700 @default.
- W1578161803 cites W2017369466 @default.
- W1578161803 cites W2033214895 @default.
- W1578161803 cites W204278382 @default.
- W1578161803 cites W2053895556 @default.
- W1578161803 cites W2056859537 @default.
- W1578161803 cites W2068961595 @default.
- W1578161803 cites W2074367725 @default.
- W1578161803 cites W2077442019 @default.
- W1578161803 cites W2079092669 @default.
- W1578161803 cites W2082433897 @default.
- W1578161803 cites W2085376012 @default.
- W1578161803 cites W2085551696 @default.
- W1578161803 cites W2092988381 @default.
- W1578161803 cites W2139378242 @default.
- W1578161803 cites W2149801340 @default.
- W1578161803 cites W2152506070 @default.
- W1578161803 cites W2154207303 @default.
- W1578161803 cites W2164890169 @default.
- W1578161803 cites W2170699077 @default.
- W1578161803 cites W2176106924 @default.
- W1578161803 cites W2294416791 @default.
- W1578161803 cites W2340604309 @default.
- W1578161803 cites W2492353954 @default.
- W1578161803 cites W2501246747 @default.
- W1578161803 cites W2798909945 @default.
- W1578161803 cites W3036346304 @default.
- W1578161803 cites W45580482 @default.
- W1578161803 cites W8442734 @default.
- W1578161803 cites W1545436035 @default.
- W1578161803 hasPublicationYear "1996" @default.
- W1578161803 type Work @default.
- W1578161803 sameAs 1578161803 @default.
- W1578161803 citedByCount "0" @default.
- W1578161803 crossrefType "dissertation" @default.
- W1578161803 hasAuthorship W1578161803A5075498510 @default.
- W1578161803 hasConcept C111919701 @default.
- W1578161803 hasConcept C133162039 @default.
- W1578161803 hasConcept C159110408 @default.
- W1578161803 hasConcept C169590947 @default.
- W1578161803 hasConcept C173608175 @default.
- W1578161803 hasConcept C177264268 @default.
- W1578161803 hasConcept C193702766 @default.
- W1578161803 hasConcept C199360897 @default.
- W1578161803 hasConcept C26517878 @default.
- W1578161803 hasConcept C2775944032 @default.
- W1578161803 hasConcept C2776760102 @default.
- W1578161803 hasConcept C2778514511 @default.
- W1578161803 hasConcept C2781172179 @default.
- W1578161803 hasConcept C41008148 @default.
- W1578161803 hasConcept C42383842 @default.
- W1578161803 hasConcept C49453240 @default.
- W1578161803 hasConcept C61483411 @default.
- W1578161803 hasConcept C64943373 @default.
- W1578161803 hasConcept C71924100 @default.
- W1578161803 hasConceptScore W1578161803C111919701 @default.
- W1578161803 hasConceptScore W1578161803C133162039 @default.
- W1578161803 hasConceptScore W1578161803C159110408 @default.
- W1578161803 hasConceptScore W1578161803C169590947 @default.
- W1578161803 hasConceptScore W1578161803C173608175 @default.
- W1578161803 hasConceptScore W1578161803C177264268 @default.
- W1578161803 hasConceptScore W1578161803C193702766 @default.
- W1578161803 hasConceptScore W1578161803C199360897 @default.
- W1578161803 hasConceptScore W1578161803C26517878 @default.
- W1578161803 hasConceptScore W1578161803C2775944032 @default.
- W1578161803 hasConceptScore W1578161803C2776760102 @default.
- W1578161803 hasConceptScore W1578161803C2778514511 @default.
- W1578161803 hasConceptScore W1578161803C2781172179 @default.
- W1578161803 hasConceptScore W1578161803C41008148 @default.
- W1578161803 hasConceptScore W1578161803C42383842 @default.
- W1578161803 hasConceptScore W1578161803C49453240 @default.
- W1578161803 hasConceptScore W1578161803C61483411 @default.
- W1578161803 hasConceptScore W1578161803C64943373 @default.