HP MLIB User's Guide Vol. 1 7th Ed.

362 HP MLIB User’s Guide
F_SGEMM/F_DGEMM/F_CGEMM/F_ZGEMM General matrix-matrix multiply
Name F_SGEMM/F_DGEMM/F_CGEMM/F_ZGEMM
General matrix-matrix multiply
Purpose F_xGEMM performs the general matrix-matrix multiply
where α and β are scalars, and A, B, and C are general matrices. op(A) and
op(B) denote A, A
T
, or A* and B, B
T
, or B*, respectively.
This F_xGEMM interface encompasses the legacy BLAS routine xGEMM with
added functionality for band matrix-matrix multiplication. Refer to
“SGEMM/DGEMM/CGEMM/ZGEMM” on page 222 for a description of the
equivalent HP MLIB legacy BLAS subprograms.
Usage VECLIB
INTEGER*4 K, LDA, LDB, LDC, M, N, TRANSA, TRANSB
REAL*4 ALPHA, BETA
REAL*4 A( LDA, * ), B( LDB, * ), C( LDC, * )
SUBROUTINE F_SGEMM (TRANSA, TRANSB, M, N, K, ALPHA, A, LDA,
B, LDB, BETA, C, LDC)
INTEGER*4 K, LDA, LDB, LDC, M, N, TRANSA, TRANSB
REAL*8 ALPHA, BETA
REAL*8 A( LDA, * ), B( LDB, * ), C( LDC, * )
SUBROUTINE F_DGEMM (TRANSA, TRANSB, M, N, K, ALPHA, A, LDA,
B, LDB, BETA, C, LDC)
INTEGER*4 K, LDA, LDB, LDC, M, N, TRANSA, TRANSB
COMPLEX*8 ALPHA, BETA
COMPLEX*8 A( LDA, * ), B( LDB, * ), C( LDC, * )
SUBROUTINE F_CGEMM (TRANSA, TRANSB, M, N, K, ALPHA, A, LDA,
B, LDB, BETA, C, LDC)
INTEGER*4 K, LDA, LDB, LDC, M, N, TRANSA, TRANSB
COMPLEX*16 ALPHA, BETA
COMPLEX*16 A( LDA, * ), B( LDB, * ), C( LDC, * )
SUBROUTINE F_ZGEMM (TRANSA, TRANSB, M, N, K, ALPHA, A, LDA,
B, LDB, BETA, C, LDC)
VECLIB8
C αop A()op B() βC+