Publication | Open Access
Distributed memory compiler design for sparse problems
85
Citations
36
References
1995
Year
EngineeringDistributed AlgorithmsCompiler TechnologyComputer ArchitectureSoftware AnalysisHardware SystemsParallel SoftwareParallel ComputingCompilersMemory Compiler DesignDynamic CompilationProgramming LanguagesParallelizing CompilerCompiler SupportRuntime SupportComputer EngineeringComputer ScienceOptimizing CompilerOperating SystemsProgram AnalysisFormal MethodsConcurrent Loop NestsParallel ProgrammingComplicated Array References
This paper addresses the issue of compiling concurrent loop nests in the presence of complicated array references and irregularly distributed arrays. Arrays accessed within loops may contain accesses that make it impossible to precisely determine the reference pattern at compile time. This paper proposes a run time support mechanism that is used effectively by a compiler to generate efficient code in these situations. The compiler accepts as input a Fortran 77 program enhanced with specifications for distributing data, and outputs a message passing program that runs on the nodes of a distributed memory machine. The runtime support for the compiler consists of a library of primitives designed to support irregular patterns of distributed array accesses and irregularly distributed array partitions. A variety of performance results on the Intel iPSC/860 are presented.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">></ETX>
| Year | Citations | |
|---|---|---|
Page 1
Page 1