Differences
This shows you the differences between two versions of the page.
Both sides previous revision
Previous revision
|
Next revision
Both sides next revision
|
start [2017/04/19 13:33] 127.0.0.1 external edit |
start [2018/02/08 14:08] prerana [Introduction] |
====== Introduction ====== | ====== Introduction ====== |
| |
AlphaZ is an open source tool-set for program analysis, transformation and parallelization in the Polyhedral Equational Model. It is being developed by the Mélange group ([[melange:schedule:spring2017|See schedule]]) at CSU, and uses an equational language called Alpha/Alphabets. | AlphaZ is an open source tool-set for program analysis, transformation and parallelization in the Polyhedral Equational Model. It is being developed by the Mélange group ([[melange:schedule:spring2018|See schedule]]) at CSU, and uses an equational language called Alpha/Alphabets. |
| |
AlphaZ is a general framework for analysis, transformation and code generation in the Polyhedral Equational Model. The input "program" consists of one or more mathematical equations that specify just //**what**// needs to be computed. It can be viewed as a specification. In order to produce a (conventional/imperative) program that //implements// this specification, one needs to specify a schedule (when), a processor allocation (who), and a memory allocation (where to store). Actually, even this is not strictly necessary. We also have a "memoized demand driven" code generator that produces executable code in the absence of any schedule or memory/processor allocation information. | AlphaZ is a general framework for analysis, transformation and code generation in the Polyhedral Equational Model. The input "program" consists of one or more mathematical equations that specify just //**what**// needs to be computed. It can be viewed as a specification. In order to produce a (conventional/imperative) program that //implements// this specification, one needs to specify a schedule (when), a processor allocation (who), and a memory allocation (where to store). Actually, even this is not strictly necessary. We also have a "memoized demand driven" code generator that produces executable code in the absence of any schedule or memory/processor allocation information. |