Compiling Array Computations
نویسندگان
چکیده
Fresh Breeze is a highly parallel architecture currently under development, which strives to provide high performance scientific computing with simple programmability. The architecture provides for multithreaded determinate execution with a write-once shared memory system. In particular, Fresh Breeze data structures must be constructed from directed acyclic graphs of immutable fixed-size chunks of memory, rather than laid out in a mutable linear memory. While this model is well suited for executing functional programs, the goal of this thesis is to see if conventional programs can be efficiently compiled for this novel memory system and parallelization model, focusing specifically on array-based linear algebra computations. We compile a subset of Java, targeting the Fresh Breeze instruction set. The compiler, using a static data-flow graph intermediate representation, performs analysis and transformations which reduce communication with the shared memory and identify opportunities for parallelization. Thesis Supervisor: Professor Jack Dennis Title: Professor Emeritus
منابع مشابه
Compiling Data - Parallel Paradigms through
This paper presents a compiling technique to generate parallel code with explicit local communications for a mesh-connected distributed memory, MIMD architecture. Our compiling technique works for the geometric paradigm of parallel computation, i.e. a data-parallel paradigm where array data structures are partitioned and assigned to a set of processing nodes, which, to perform their identical t...
متن کاملCompiling Geometric Paradigms through Local Communications
This paper presents a compiling technique to generate parallel code with explicit local communications for a mesh-connected distributed memory, MIMD architecture. Our compiling technique works for the geometric paradigm of parallel computation, i.e. a data-parallel paradigm where array data structures are partitioned and assigned to a set of processing nodes, which, to perform their identical t...
متن کاملCompiling Matlab for High Performance Computing via X 10 1 Sable Technical Report
Matlab is a popular dynamic array-based language commonly used by students, scientists and engineers, who appreciate the interactive development style, the rich set of array operators, the extensive builtin library, and the fact that they do not have to declare static types. Even though these users like to program in Matlab, their computations are often very computeintensive and are better suit...
متن کاملSable Research Group First steps to compiling Matlab to X 10 Sable Technical Report
Matlab is a popular dynamic array-based language commonly used by students, scientists and engineers, who appreciate the interactive development style, the rich set of array operators, the extensive builtin library, and the fact that they do not have to declare static types. Even though these users like to program in Matlab, their computations are often very computeintensive and are potentially...
متن کاملGeneric Program Representation and Evaluation of Systolic Computations on Multicomputers
An overview of the uniied model (proposed earlier by us) for compiling systolic computations for multicomputers is given. Subsequently, we consider the diagonal and farming implementationalobjects which represent two speciic cases of the implementational objects deened in the model. For these two objects, we give prototype codes in the Occam language and give performance models for multi-transp...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2014