The block cyclic data distribution used by ScaLAPACK is justified by the analysis of many algorithms intended for linear algebra calculations and by the goal of achieving good load balancing. See The Design of Linear Algebra Libraries for High Performance Computers, by J. Dongarra and D. Walker, and Parallel Numerical Linear Algebra, by J. Demmel, M. Heath, and H. van der Vorst).
Use the the form below to specify the dimensions of a matrix,
the desired blocking, and the process grid configuration. Then click on "distribute data": a new window will pop up
with the corresponding block cyclic distribution. The acceptable values are indicated between
parentheses; the defaults correspond
to those of the matrix A used in Exercise 4 in the hands-on material.
Note that although the PBLAS allow for non-square blocking factors,
most ScaLAPACK routines do not, because of alignment constraints (which
vary from routine to routine).