What is hipBLASLt?#
hipBLASLt is a library that provides GEMM operations with flexible APIs and extends functionalities beyond the traditional BLAS library. hipBLASLt exposes APIs in the HIP programming language with an underlying optimized generator as a backend kernel provider.
This library adds flexibility in matrix data layouts, input types, compute types, and also in choosing the algorithmic implementations and heuristics through parameter programmability. After you identify a set of options for the intended GEMM operations, you can use these options repeatedly for different inputs.
The GEMM operation of hipBLASLt is performed by hipblasLtMatmul(). Here is the equation:
where, \(op(A)/op(B)\) refers to in-place operations such as transpose/non-transpose and \(alpha\), \(beta\) are the scalars. \(Activation\) function supports Gelu and Relu. \(Bias\) vector matches matrix \(D\) rows and broadcasts to all \(D\) columns.