GEMM-based level 3 BLAS:: High-performance model implementations and performance evaluation benchmark

被引:109
作者
Kågström, B [1 ]
Ling, P
Van Loan, C
机构
[1] Umea Univ, Dept Comp Sci, S-901 Umea, Sweden
[2] Cornell Univ, Dept Comp Sci, Ithaca, NY 14853 USA
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 1998年 / 24卷 / 03期
关键词
blocked algorithms; GEMM-based level 3 BLAS; matrix-matrix kernels; memory hierarchy; parallelization; vectorization;
D O I
10.1145/292395.292412
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The level 3 Basic Linear Algebra Subprograms (BLAS) are designed to perform various matrix multiply and triangular system solving computations. Due to the complex hardware organization of advanced computer architectures the development of optimal level 3 BLAS code is costly and time consuming. However, it is possible to develop a portable and high-performance level 3 BLAS library mainly relying on a highly optimized GEMM, the routine for the general matrix multiply and add operation. With suitable partitioning all the other level 3 BLAS can be defined in terms of GEMM and a small amount of level 1 and level 2 computations. Our contribution is twofold. First, the model implementations in Fortran 77 of the GEMM-based level 3 BLAS are structured to reduce effectively data traffic in a memory hierarchy. Second, the GEMM-based level 3 BLAS performance evaluation benchmark. is a tool for evaluating and comparing different implementations of the level 3 BLAS with the GEMM-based model implementations.
引用
收藏
页码:268 / 302
页数:35
相关论文
共 26 条
[21]  
KAGSTROM B, 1991, HIGH PERFORMANCE COM, V2, P269
[22]  
Lawson C. L., 1979, ACM Transactions on Mathematical Software, V5, P308, DOI 10.1145/355841.355848
[23]   A SET OF HIGH-PERFORMANCE LEVEL-3 BLAS STRUCTURED AND TUNED FOR THE IBM 3090-VF AND IMPLEMENTED IN FORTRAN-77 [J].
LING, P .
JOURNAL OF SUPERCOMPUTING, 1993, 7 (03) :323-355
[24]   IMPLEMENTATION OF THE LEVEL-2 AND LEVEL-3 BLAS ON THE CRAY Y-MP AND THE CRAY-2 [J].
SHEIKH, Q ;
VU, PO ;
YANG, C ;
MERCHANT, M .
JOURNAL OF SUPERCOMPUTING, 1992, 5 (04) :291-305
[25]   GAUSSIAN ELIMINATION IS NOT OPTIMAL [J].
STRASSEN, V .
NUMERISCHE MATHEMATIK, 1969, 13 (04) :354-&
[26]  
WINOGRAD S, 1973, COMPLEXITY SEQUENTIA, P181