Show simple item record

dc.contributor.authorChavarria-Miranda, Daniel
dc.date.accessioned 2017-08-02T22:03:01Z
dc.date.available 2017-08-02T22:03:01Z
dc.date.issued 2004-03-09
dc.identifier.urihttps://hdl.handle.net/1911/96323
dc.descriptionThis work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/18615
dc.description.abstract Over the past few decades, scientific research has grown to rely increasingly on simulation and other computational techniques. This strategy has been named in silico research. Computation is increasingly important for testing theories and obtaining results in fields where experimentation is not currently possible (e.g. astrophysics, cosmology, climate modeling) or the detail and resolution of the results cannot be provided by traditional experimental methodologies (e.g. computational biology, materials science). The quantities of data manipulated and produced by such scientific programs are often too large to be processed on a uniprocessor computer. Parallel computers have been used to obtain such results. Creating software for parallel machines has been a very difficult task. Most parallel applications have been written using low-level communication libraries based on message passing, which require application programmers to deal with all aspects of programming the machine. Compilers for data-parallel languages have been proposed as an alternative. High-Performance Fortran (HPF) was designed to simplify the construction of data-parallel programs operating on dense distributed arrays. HPF compilers have not implemented the necessary transformations and mapping strategies to translate complex high-level data-parallel codes into low-level high-performance applications. This thesis demonstrates that it is possible to generate scalable high-performance code for a range of complex, regular applications written in high-level data-parallel languages, through the design and implementation of several analysis, compilation and runtime techniques in the dHPF compiler. The major contributions of this thesis are: Analysis, code generation and data distribution strategies (multipartitioning) for tightly-coupled codes. Compiler and runtime support based on generalized multipartitioning. -Communication scheduling to hide latency, through the overlap of embarrassingly parallel loops. Advanced static analysis for communication coalescing and simplification. Support for efficient single-image executables running on a parameterized number of processors.Strategies for generation of large-scale scalable executables up to hundreds of processors. Experiments with the NAS SP, BT and LU application benchmarks show that these techniques enable the dHPF compiler to generate code that scales efficiently up to hundreds of processors with only a few percent overhead with respect to high-quality hand-coded implementations. The techniques are necessary but not sufficient to produce efficient code for the NAS MG multigrid benchmark, which still exhibits large overhead compared to its hand-coded counterpart.
dc.format.extent 187 pp
dc.language.iso eng
dc.rights You are granted permission for the noncommercial reproduction, distribution, display, and performance of this technical report in any format, but this permission is only for a period of forty-five (45) days from the most recent time that you verified that this technical report is still available from the Computer Science Department of Rice University under terms that include this permission. All other rights are reserved by the author(s).
dc.title Advanced Data-Parallel Compilation
dc.type Technical report
dc.date.note March 9, 2004
dc.identifier.digital TR04-431
dc.type.dcmi Text
dc.identifier.citation Chavarria-Miranda, Daniel. "Advanced Data-Parallel Compilation." (2004) https://hdl.handle.net/1911/96323.


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record