A Set of Batched Basic Linear Algebra Subprograms and LAPACK Routines

Ahmad Abdelfattah, Timothy Costa, Jack Dongarra, Mark Gates, Azzam Haidar, Sven Hammarling, Nicholas Higham, Jakub Kurzak, Piotr Luszczek, Stanimire Tomov, Mawussi Zounon

Research output: Contribution to journalArticlepeer-review

Abstract

This paper describes a standard API for a set of Batched Basic Linear Algebra Subprograms (Batched BLAS or BBLAS). The focus is on many independent BLAS operations on small matrices that are grouped together and processed by a single routine, called a Batched BLAS routine. The matrices are grouped together in uniformly sized groups, with just one group if all the matrices are of equal size. The aim is to provide more efficient, but portable, implementations of algorithms on high-performance many-core platforms. These include multicore and many-core CPU processors, GPUs and coprocessors, and other hardware accelerators with floating-point compute facility. As well as the standard types of single and double precision, we also include half and quadruple precision in the standard. In particular half precision is used in many very large scale applications, such as those associated with machine learning.
Original languageEnglish
JournalACM Transactions on Mathematical Software
Publication statusAccepted/In press - 26 Oct 2020

Fingerprint

Dive into the research topics of 'A Set of Batched Basic Linear Algebra Subprograms and LAPACK Routines'. Together they form a unique fingerprint.

Cite this