Publication | Closed Access
Compilation techniques for block-cyclic distributions
38
Citations
0
References
1994
Year
Unknown Venue
EngineeringCompiler TechnologyComputer ArchitectureSoftware AnalysisParallel SoftwareCompilation TechniquesCompilersParallel ComputingDynamic CompilationDistribution SpecificationsParallelizing CompilerCompiler SupportComputer EngineeringMemory Access SequenceComputer ScienceOptimizing CompilerFortran DPseudorandom Number GeneratorProgram AnalysisSoftware TestingFormal MethodsParallel ProgrammingSystem Software
Compilers for data-parallel languages such as Fortran D and High-Performance Fortran use data alignment and distribution specifications as the basis for translating programs for execution on MIMD distributed-memory machines. This paper describes techniques for generating efficient code for programs that use block-cyclic distributions. These techniques can be applied to programs with symbolic loop bounds, symbolic array dimensions, and loops with non-unit strides. We present algorithms for computing the data elements that need to be communicated among processors both for loops with unit and non-unit strides, a linear-time algorithm for computing the memory access sequence for loops with non-unit strides, and experimental results for a hand-compiled test case using block-cyclic distributions