pub struct RustBlas { /* private fields */ }Expand description
Pure Rust implementation of BLAS operations.
This implementation provides exact rational arithmetic operations, ensuring correctness for linear programming solvers that require exact solutions.
Implementations§
Source§impl RustBlas
impl RustBlas
Sourcepub fn with_config(config: BlasConfig) -> Self
pub fn with_config(config: BlasConfig) -> Self
Creates a new RustBlas instance with custom configuration.
Trait Implementations§
Source§impl BlasOps for RustBlas
impl BlasOps for RustBlas
Source§fn gemm_into(
&self,
trans_a: Transpose,
trans_b: Transpose,
alpha: &Rational64,
a: &Matrix,
b: &Matrix,
beta: &Rational64,
c: &mut Matrix,
)
fn gemm_into( &self, trans_a: Transpose, trans_b: Transpose, alpha: &Rational64, a: &Matrix, b: &Matrix, beta: &Rational64, c: &mut Matrix, )
General matrix-matrix multiplication. Read more
Source§fn gemv_into(
&self,
trans: Transpose,
alpha: &Rational64,
a: &Matrix,
x: &[Rational64],
beta: &Rational64,
y: &mut [Rational64],
)
fn gemv_into( &self, trans: Transpose, alpha: &Rational64, a: &Matrix, x: &[Rational64], beta: &Rational64, y: &mut [Rational64], )
General matrix-vector multiplication. Read more
Source§fn trsm(
&self,
side: Side,
uplo: UpLo,
trans: Transpose,
diag: Diag,
alpha: &Rational64,
a: &Matrix,
b: &mut Matrix,
)
fn trsm( &self, side: Side, uplo: UpLo, trans: Transpose, diag: Diag, alpha: &Rational64, a: &Matrix, b: &mut Matrix, )
Triangular solve with multiple right-hand sides. Read more
Source§fn trsv(
&self,
uplo: UpLo,
trans: Transpose,
diag: Diag,
a: &Matrix,
b: &mut [Rational64],
)
fn trsv( &self, uplo: UpLo, trans: Transpose, diag: Diag, a: &Matrix, b: &mut [Rational64], )
Triangular solve for a single vector. Read more
Source§fn config(&self) -> &BlasConfig
fn config(&self) -> &BlasConfig
Returns the configuration for this BLAS implementation.
Source§fn gemm(&self, a: &Matrix, b: &Matrix) -> Matrix
fn gemm(&self, a: &Matrix, b: &Matrix) -> Matrix
General matrix-matrix multiplication (convenience method). Read more
Source§fn gemv(&self, a: &Matrix, x: &[Rational64]) -> Vec<Rational64> ⓘ
fn gemv(&self, a: &Matrix, x: &[Rational64]) -> Vec<Rational64> ⓘ
General matrix-vector multiplication (convenience method). Read more
Source§fn should_use_blas_gemm(&self, m: usize, n: usize, k: usize) -> bool
fn should_use_blas_gemm(&self, m: usize, n: usize, k: usize) -> bool
Checks if BLAS should be used for gemm based on matrix dimensions.
Auto Trait Implementations§
impl Freeze for RustBlas
impl RefUnwindSafe for RustBlas
impl Send for RustBlas
impl Sync for RustBlas
impl Unpin for RustBlas
impl UnsafeUnpin for RustBlas
impl UnwindSafe for RustBlas
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more