Distributed-memory systems are powerful tools for solving large-scale scientific and engineering problems. However these machines are difficult to program since the data have to be distributed across the processors and message-passing operations must be inserted for communicating non-local data. In this paper, we discuss SUPERB and Vienna Fortran, two related developments with the objective of providing the user with a higher level programming paradigm while not sacrificing target code performance. The parallelization system SUPERB was developed in the German supercomputer project SUPRENUM from 1985 to 1989. It is based on the Single-Program-Multiple-Data (SPMD) paradigm, allows the use of global addresses, and automatically inserts the necessary communication statements, given a usersupplied data distribution. SUPERB was the first implemented system that translated sequential Fortran 77 into explicitly parallel message-passing Fortran. As a result of the experiences with SUPERB and related research, the language Vienna Fortran was designed within the ESPRIT project GENESIS, in a joint effort of the University of Vienna and ICASE, Nasa Langley Research Center. Vienna Fortran is a machine-independent language extension to Fortran, which includes a broad range of features for the high-level support of advanced application
|
401
|
Supercompilers for Parallel and Vector Computers
– Zima, Chapman
- 1991
|
|
316
|
Compiling Fortran D for MIMD distributed-memory machines
– Hiranandani, Kennedy, et al.
- 1992
|
|
298
|
Fortran D Language Specification
– Fox, Hiranandani, et al.
- 1990
|
|
179
|
SUPERB: A tool for semi-automatic MIMD/SIMD parallelization
– ZIMA, BAST, et al.
- 1988
|
|
175
|
Supporting Compiling Global Name-Space Parallel Loops for Distributed Execution
– Koelbel, Mehrotra
- 1991
|
|
163
|
Process decomposition through locality of reference
– ROGERS, PINGALI
- 1989
|
|
141
|
Compiling programs for distributed-memory multiprocessors
– CALLAHAN, KENNEDY
- 1988
|
|
133
|
Data-parallel programming on MIMD computers
– HATCHER, QUINN, et al.
- 1991
|
|
120
|
Compiling communication-efficient programs for massively parallel machines
– LI, CHEN
- 1991
|
|
114
|
Run-time scheduling and execution of loops on message passing machines
– Saltz, Crowley, et al.
- 1991
|
|
83
|
The DINO parallel programming language
– Rosing, Schnabel, et al.
- 1990
|
|
75
|
Compiling for distributed-memory systems
– Zima, Chapman
- 1993
|
|
68
|
Automatic Parallelization for Distributed-Memory Multiprocessing Systems
– Gerndt
- 1989
|
|
67
|
Vienna Fortran - a language specification
– Zima, Brezany, et al.
- 1992
|
|
66
|
Distributed Memory Compiler Design for Sparse Problems
– Saltz, Wu, et al.
- 1991
|
|
61
|
Vienna fortran - a fortran language extension for distributed memory multiprocessors. High Performance FORTRAN Forum
– Zima, Chapman
- 1992
|
|
51
|
Programming distributed memory architectures using Kali
– Mehrotra, Rosendale
- 1991
|
|
45
|
An automatic and symbolic parallelization system for distributed memory parallel computers
– IKUDOME, Fox, et al.
- 1990
|
|
44
|
Strand: New Concepts in Parallel Programming
– Foster, Taylor
- 1990
|
|
43
|
PANDORE: A system to manage data distribution
– Andr4, Pazat, et al.
- 1990
|
|
38
|
Compiling Programs for Nonshared Memory Machines
– Koelbel
- 1990
|
|
29
|
SUPERB support for irregular scientific computations
– Brezany, Gerndt, et al.
- 1992
|
|
26
|
Optimizing FORTRAN-90 Programs for Data Motion on Massivelly Parallel Systems
– Chen, Wu
- 1992
|
|
25
|
MPP Fortran Programming Model
– Pase, McDonald, et al.
- 1994
|
|
24
|
Performance Fortran Forum. Draft High Performance Fortran Language Specification, version 1.0. Available as technical report CRPC-TR92225
– High
- 1993
|
|
23
|
Concurrent File Operations in a High Performance Fortran. Supercompuiing ’92
– Brezany, Gerndt, et al.
- 1992
|
|
21
|
ADAPTing Fortran 90 Array Programs for Distributed Memory Architectures
– Merlin
- 1991
|
|
21
|
Parallelization of Fortran code on distributed-memory parallel processors
– Ruhl, Annaratone
- 1990
|
|
16
|
High Performance Fortran Without Templates: An ~lternative Model for Distribution and Alignment
– Chapman, Mehrotra, et al.
- 1993
|
|
15
|
Expressing complex parallel algorithms in DINO
– Rosing, Schnabel, et al.
- 1989
|
|
12
|
Semi-automatic process partitioning for parallel computation
– Koelbel, Mehrotra, et al.
- 1987
|
|
11
|
A high-level language for the description of parallel algorithms
– Paalvast, H
- 1989
|
|
10
|
Array Distribution in SUPERB
– Gerndt
- 1989
|
|
8
|
A systolic Array Programming Language
– Tseng
- 1990
|
|
7
|
Hypertasking Support for Dynamically Redistributable and Resizeable Arrays on the iPSC
– Baber
- 1991
|
|
7
|
Optimizing communication in superb
– Gerndt, Zima
- 1990
|
|
7
|
SUPRENUM: A trendsetter in modern supercomputer development
– Giloi
- 1988
|
|
5
|
Compiling Crystal for Distributed-Memory Machines
– Li
- 1991
|
|
5
|
Runtime compilation for multiprocessors, to appear: Concurrency, Practice and Experience
– Saltz, Berryman, et al.
- 1991
|
|
3
|
Work distribution in parallel programs for distributed memory multiprocessors
– Gerndt
- 1991
|