-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RFC: Introduction of BGEMM and BGEMV for BFloat16 Matrix Operations in OpenBLAS #5155
Comments
No objection from me, in fact I remember that |
Thanks for your inputs @martin-frbg . |
@nikhil-arm In the proposed Only
|
Thanks for you input @conradsnicta . This makes sense, we will try to accommodate this. |
RFC: Introduction of BGEMM and BGEMV for BFloat16 Matrix Operations in OpenBLAS
Author: Nikhil Gupta
Date: 2025-02-27
Status: Proposal / Draft
1. Abstract
This RFC proposes the addition of two new BLAS routines—BGEMM and BGEMV—to the OpenBLAS project. These routines perform matrix-matrix multiplication and matrix-vector multiplication, respectively, entirely in BFloat16 (BF16) precision. Unlike the existing
sbgemm
operation—which consumes BF16 inputs but produces FP32 outputs—the new operations will produce BF16 outputs. For architectures that lack native BF16 multiply–accumulate instructions with BF16 outputs, the implementation may perform accumulation in FP32 and subsequently convert the results to BF16.2. Motivation
3. Proposed Changes
Introduce two new BLAS routines into OpenBLAS:
Both routines will:
alpha
andbeta
).4. Proposed API Signatures
Below are the example of proposed function signatures, modeled after the existing BLAS conventions:
BGEMM
The text was updated successfully, but these errors were encountered: