Software Libraries for Message Passing Computers
David W. Walker
1
Title page
2
Overview of talk
3
Motivation for parallel libraries
4
Desirable features of parallel libraries
4.1 Communication safety
4.1.1
Intended behaviour of example 1
4.1.2
Unintended behaviour of example 1
4.1.3
Intended behaviour of example 2
4.1.4
Unintended behaviour of example 2
4.2
Process groups
4.3
Application topologies
5
Some existing parallel libraries
5.1
The Parallel Utilities Library
5.2
The Multicomputer Toolbox
5.3
The PETSc toolkit
6
The ScaLAPACK parallel library
6.1
Problems addressed by ScaLAPACK
6.2
Key ideas in ScaLAPACK
6.3
Non-uniform memory access machines
6.4
Unpartitioned LU factorisation
6.5
Block partitioned LU factorisation
6.6
The block-cyclic data distribution
6.7
Example of a block-cyclic data distribution
6.8
ScaLAPACK building blocks
6.8.1
Black box and tool box use modes
6.8.2
Basic Linear Algebra Communication Subprograms
6.8.3
Parallel BLAS
6.8.4
PBLAS operations
7
Approaches to parallel I/O
7.1
Basic parallel I/O operations
7.2
I/O cost of out-of-core LU
7.3
Hybrid LU factorisation algorithm
8
Object-oriented approaches
9
Procedural and object-oriented approaches
10
Summary and future work