Strategy for Compiling Parallel Matlab for General Distributions

dc.contributor.authorFletcher, Maryen_US
dc.contributor.authorJin, Guohuaen_US
dc.contributor.authorKennedy, Kenen_US
dc.contributor.authorMcCosh, Cherylen_US
dc.date.accessioned2017-08-02T22:03:04Zen_US
dc.date.available2017-08-02T22:03:04Zen_US
dc.date.issued2006-06-16en_US
dc.date.noteJune 16, 2006en_US
dc.description.abstractExecuting applications in parallel can produce significant performance gains, yet the time and expertise needed for the low-level details of parallelism is often prohibitive. Additionally, many applications rely heavily on domain-specific libraries, while it is not practical to write an optimizing compiler each time a domain-specific library is developed. In order to obtain high performance parallelism from a high-level, domain-specific scripting language, we are developing a parallel Matlab compiler, called the Matlab D compiler, using a telescoping languages framework to generate Fortran with MPI from Matlab scripts. The goal of telescoping languages is to automatically generate high performance compilers for domain-specific languages written in the form of libraries. Before user-script compilation, the domain-specific library routines are precompiled and optimized to form specialized variants, which are substituted into the user script during user-script compilation. With this strategy, user scripts are compiled quickly, and the compiler produces applications with the same high performance as if the user's application were available at library compile time. To create a parallel Matlab, we augmented the language with array distribution types to create Matlab D. When declaring an array intended to be used in a parallel computation, the user specifies the desired distribution for the array. Our Matlab D compiler, leveraging HPF compiler technology, generates the data movement operations and partitions the computations automatically to obtain the parallelism implied by the distributions. Thus, users can develop applications in a high-level scripting language and obtain the high performance necessary without incurring the cost of low-level programming. This paper presents the framework of the Matlab D compiler from a telescoping languages perspective and our preliminary work on the project.en_US
dc.format.extent15 ppen_US
dc.identifier.citationFletcher, Mary, Jin, Guohua, Kennedy, Ken, et al.. "Strategy for Compiling Parallel Matlab for General Distributions." (2006) https://hdl.handle.net/1911/96351.en_US
dc.identifier.digitalTR06-877en_US
dc.identifier.urihttps://hdl.handle.net/1911/96351en_US
dc.language.isoengen_US
dc.rightsYou 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).en_US
dc.titleStrategy for Compiling Parallel Matlab for General Distributionsen_US
dc.typeTechnical reporten_US
dc.type.dcmiTexten_US
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
TR06-877.pdf
Size:
426.48 KB
Format:
Adobe Portable Document Format