#![warn(clippy::all)]
#![warn(missing_docs)]
pub mod algorithm_selection;
pub mod batched;
pub mod complex_gemm;
pub mod elementwise;
pub mod error;
pub mod handle;
pub mod level1;
pub mod level2;
pub mod level3;
pub mod precision;
pub mod reduction;
pub mod types;
#[cfg(test)]
mod test_matrices;
pub use algorithm_selection::{
AlgorithmConfig, AlgorithmHeuristic, AlgorithmId, AlgorithmSelector, EpiloguePreference,
SwizzleMode,
};
pub use error::{BlasError, BlasResult};
pub use handle::BlasHandle;
pub use types::{
DiagType, E4M3, E5M2, FillMode, GpuFloat, Layout, MathMode, MatrixDesc, MatrixDescMut,
PointerMode, Side, Transpose, VectorDesc,
};
pub mod prelude {
pub use crate::algorithm_selection::{
AlgorithmConfig, AlgorithmHeuristic, AlgorithmId, AlgorithmSelector, EpiloguePreference,
SwizzleMode,
};
pub use crate::error::{BlasError, BlasResult};
pub use crate::handle::BlasHandle;
pub use crate::types::{
DiagType, E4M3, E5M2, FillMode, GpuFloat, Layout, MathMode, MatrixDesc, MatrixDescMut,
PointerMode, Side, Transpose, VectorDesc,
};
pub use crate::level1::{asum, axpy, copy_vec, dot, iamax, nrm2, scal, swap};
pub use crate::level2::{gemv, ger, symv, syr, trmv, trsv};
pub use crate::level3::persistent_gemm::PersistentGemmConfig;
pub use crate::level3::stream_k::StreamKConfig;
pub use crate::level3::{
batched_trsm, gemm_api, persistent_gemm, stream_k, symm, syr2k, syrk, trmm, trsm,
};
pub use crate::complex_gemm::{complex_gemm, complex_gemv};
pub use crate::batched::{batched_gemm, grouped_gemm, strided_gemm};
pub use crate::elementwise;
pub use crate::reduction;
}