Skip to content

Basic linear algebra routines implemented using the chop rounding function

License

Notifications You must be signed in to change notification settings

imciner2/ChopBLAS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChopBLAS - A Matlab library for mixed-precision and stochastically rounded linear algebra

CI License

ChopBLAS is a MATLAB library that implements the functions contained inside the BLAS (Basic Linear Algebra Subsystem) specification with each operation rounded using the chop MATLAB library. This allows for the easy simulation of linear algebra operations/algorithms in low precision floating-point and with stochastic rounding.

BLAS Functions

Level 1

Function Operation Description
chscal $x_{out} = \alpha x$ Scale all entries of the vector $x$ by $\alpha$
chaxpy $x_{out} = \alpha x + y$ Add the scaled vector $x$ to the vector $y$
chdot $x_{out} = x'y$ Compute the dot product between $x$ and $y$
chnrm2 $x_{out} = \lVert x \rVert_{2}$ Compute the 2-norm of the vector $x$
chasum $x_{out} = \sum_{i} \lvert x_{i} \rvert$ Compute the sum of the absolute value of the elements of the vector $x$

Level 2

Function Operation Description
chgemv $x_{out} = \alpha A x + \beta y$ or $x_{out} = \alpha A' x + \beta y$ Compute the matrix-vector product $Ax + y$
chtrmv $x_{out} = A x$ or $x_{out} = A' x$ Compute the matrix-vector product $Ax$ when $A$ is a triangular matrix
chtrsv Find $x$ in $A x = b$ or $A' x = b$ Compute the solution to the triangular system of equations given by $A$ and $b$ when $A$ is a triangular matrix
chger $X = \alpha x y^{T} + A$ Compute the rank-1 update of $A$ using the outer product between $x$ and $y$

License

This library is licensed under the BSD 2-Clause license, provided inside the LICENSE file in this repository.

Releases

No releases published

Packages

No packages published

Languages