2000 · 41 citations · 18 references
ComputingComputer ScienceHigh-performance ComputingParallel ComputingProgramming LanguagesScientific ComputingData ParallelismParallel ArchitecturesParallel Computer ArchitectureParallel Computing SystemsParallel Performance AnalysisParallel Programming ModelsHigh-performance Computing SystemsParallel Computing ArchitecturesParallel Computing PerformanceParallel ProgrammingPortabilityPortability Evaluation
Hierarchical algorithms such as multigrid applications form an important cornerstone for scientific computing. In this study, we take a first step toward evaluating parallel language support for hierarchical applications by comparing implementations of the NAS MG benchmark in several parallel programming languages: Co-Array Fortran, High Performance Fortran, Single Assignment C, and ZPL. We evaluate each language in terms of its portability, its performance, and its ability to express the algorithm clearly and concisely. Experimental platforms include the Cray T3E, IBM SP, SGI Origin, Sun Enterprise 5500, and a high-performance Linux cluster. Our findings indicate that while it is possible to achieve good portability, performance, and expressiveness, most languages currently fall short in at least one of these areas. We find a strong correlation between expressiveness and a language's support for a global view of computation, and we identify key factors for achieving portable performance in multigrid applications.
18
Multi-level adaptive solutions to boundary-value problems
Achi Brandt · Mathematics of Computation · 1977 · 3.2K citations · Full text
MPI: A Message-Passing Interface Standard
Message P Forum · 1994 · 2.7K citations
Co-array Fortran for parallel programming
Robert W. Numrich, John Reid · ACM SIGPLAN Fortran Forum · 1998 · 671 citations