|
Abstract : |
Data-parallel languages, such as HIGH PERFORMANCE FORTRAN or FORTRAN D, provide a machine-independent data-parallel programming paradigm in which the applications programmer uses a dialect of a sequential language annotated with high-level data-distribution directives. Identifying parallelism in data-parallel applications typically is straightforward, but making efficient use of this parallelism for irregular applications, such as molecular dynamics or unstructured meshes, is a challenge due to the limited compile-time knowledge about data access patterns. This dissertation establishes the thesis that spatial locality of the underlying prob-lems can be used as a basis of compiler support for parallelizing such applications. The work done for supporting this thesis and for parallelizing applications in general can be divided into three parts, which correspond to different aspects of paralleliz-ing compilers for different architectures. Value-based mappings express the spatial locality characteristics of an application and assist the compiler in computing a dis-tribution with both a balanced computational workload and high data access local-, |