A framework for dense triangular matrix kernels on various manycore architectures

Ali Charara, David E. Keyes, Hatem Ltaief

Research output: Contribution to journalArticlepeer-review

6 Scopus citations


We present a new high-performance framework for dense triangular Basic Linear Algebra Subroutines (BLAS) kernels, ie, triangular matrix-matrix multiplication (TRMM) and triangular solve (TRSM), on various manycore architectures. This is an extension of a previous work on a single GPU by the same authors, presented at the EuroPar'16 conference, in which we demonstrated the effectiveness of recursive formulations in enhancing the performance of these kernels. In this paper, the performance of triangular BLAS kernels on a single GPU is further enhanced by implementing customized in-place CUDA kernels for TRMM and TRSM, which are called at the bottom of the recursion. In addition, a multi-GPU implementation of TRMM and TRSM is proposed and we show an almost linear performance scaling, as the number of GPUs increases. Finally, the algorithmic recursive formulation of these triangular BLAS kernels is in fact oblivious to the targeted hardware architecture. We, therefore, port these recursive kernels to homogeneous x86 hardware architectures by relying on the vendor optimized BLAS implementations. Results reported on various hardware architectures highlight a significant performance improvement against state-of-the-art implementations. These new kernels are freely available in the KAUST BLAS (KBLAS) open-source library at https://github.com/ecrc/kblas.
Original languageEnglish (US)
Pages (from-to)e4187
JournalConcurrency and Computation: Practice and Experience
Issue number15
StatePublished - Jun 5 2017


Dive into the research topics of 'A framework for dense triangular matrix kernels on various manycore architectures'. Together they form a unique fingerprint.

Cite this