## Index

• Parallel Level-2 BLAS:
• PLA_Gemv: Parallel General Matrix-Matrix Multiplication
• Parallel Level-3 BLAS:
• PLA_Gemm: Parallel General Matrix-Vector Multiplication
• Parallel Factorization Routines:

## PLA_Gemv: General Matrix-Vector Multiplication

The best way to justify the Abstract Programming Interface used by PLAPACK is to look at how a parallel implementation code looks if it is coded in a more traditional fashion. Look at the corresponding ScaLAPACK code:
• pdgemv_.c: ScaLAPACK Parallel BLAS (PBLAS) routine
• pbdgemv.f: ScaLAPACK Parallel Blocked BLAS (PBBLAS) routine

## PLA_Gemm: General Matrix-Matrix Multiplication

• Main routine: PLA_Gemm.c
This routine chooses between three different routines, depending on the shapes of the matrices involved:
• If matrix C contains most data, it is left in place and A and B are communicated. The algorithm is implemented as a sequence of rank-k updates.
• If matrix A contains most data, it is left in place and B and C are communicated. The algorithm is implemented as a sequence of matrix-panel( of columns) multiplies.
• If matrix B contains most data, it is left in place and A and C are communicated. The algorithm is implemented as a sequence of panel( of rows)-matrix multiplies.
• Parameter checking: PLA_Gemm_enter_exit.c

The best way to justify the Abstract Programming Interface used by PLAPACK is to look at how a parallel implementation code looks if it is coded in a more traditional fashion. Look at the corresponding ScaLAPACK code:
• pdgemm_.c: ScaLAPACK Parallel BLAS (PBLAS) routine
• pbdgemm.f: ScaLAPACK Parallel Blocked BLAS (PBBLAS) routine

## PLA_Chol: Cholesky Factorization

• Main routine: PLA_Chol.c
• Parameter checking: PLA_Chol_enter_exit.c
• A much simpler implementation, which really shows off how a PLAPACK implementation is just a direct translation of how an algorithm is naturally expressed, is given by
The best way to justify the Abstract Programming Interface used by PLAPACK is to look at how a parallel implementation code looks if it is coded in a more traditional fashion. Look at the corresponding ScaLAPACK code:
• pdpotrf.c: ScaLAPACK Blocked Cholesky Factorization
• pdpotf2.c: ScaLAPACK Unblocked Cholesky Factorization (needed by blocked factorization)

### References:

Back to PLAPACK page

Send mail to
plapack@cs.utexas.edu

Last Updated: Feb. 8, 2000