Developer Reference

  • 0.9
  • 09/09/2020
  • Public Content
Contents

Matrix Shapes

The BLACS routines recognize the two most common classes of matrices for dense linear algebra. The first of these classes consists of general rectangular matrices, which in machine storage are 2D arrays consisting of
m
rows and
n
columns, with a leading dimension,
lda
, that determines the distance between successive columns in memory.
The general rectangular matrices take the following parameters as input when determining what array to operate on:
m
(input)
INTEGER
. The number of matrix rows to be operated on.
n
(input)
INTEGER
. The number of matrix columns to be operated on.
a
(input/output)
TYPE
(depends on routine), array of dimension
(
lda
,
n
)
.
A pointer to the beginning of the (sub)array to be sent.
lda
(input)
INTEGER
. The distance between two elements in matrix row.
The second class of matrices recognized by the BLACS are trapezoidal matrices (triangular matrices are a sub-class of trapezoidal). Trapezoidal arrays are defined by
m
,
n
, and
lda
, as above, but they have two additional parameters as well. These parameters are:
uplo
(input)
CHARACTER*1
. Indicates whether the matrix is upper or lower trapezoidal, as discussed below.
diag
(input)
CHARACTER*1
. Indicates whether the diagonal of the matrix is unit diagonal (will not be operated on) or otherwise (will be operated on).
The shape of the trapezoidal arrays is determined by these parameters as follows:
Trapezoidal Arrays Shapes
Trapezoidal Arrays Shapes
The packing of arrays, if required, so that they may be sent efficiently is hidden, allowing the user to concentrate on the logical matrix, rather than on how the data is organized in the system memory.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804