54 releases

new 0.23.0 Feb 8, 2025
0.22.0 Apr 10, 2021
0.21.0 Feb 13, 2021
0.20.0 May 26, 2018
0.0.2 Nov 21, 2014

#114 in Math

Download history 2584/week @ 2024-10-22 2751/week @ 2024-10-29 3179/week @ 2024-11-05 2650/week @ 2024-11-12 2201/week @ 2024-11-19 1701/week @ 2024-11-26 2446/week @ 2024-12-03 2432/week @ 2024-12-10 2325/week @ 2024-12-17 1175/week @ 2024-12-24 2831/week @ 2024-12-31 3549/week @ 2025-01-07 2710/week @ 2025-01-14 3210/week @ 2025-01-21 5650/week @ 2025-01-28 3795/week @ 2025-02-04

15,920 downloads per month
Used in 34 crates (22 directly)

Apache-2.0 OR MIT

64KB
3K SLoC

Rust 2.5K SLoC Python 317 SLoC

BLAS Package Documentation Build

The package provides wrappers for BLAS (Fortran).

Architecture

Example

use blas::*;

let (m, n, k) = (2, 4, 3);
let a = vec![
    1.0, 4.0,
    2.0, 5.0,
    3.0, 6.0,
];
let b = vec![
    1.0, 5.0,  9.0,
    2.0, 6.0, 10.0,
    3.0, 7.0, 11.0,
    4.0, 8.0, 12.0,
];
let mut c = vec![
    2.0, 7.0,
    6.0, 2.0,
    0.0, 7.0,
    4.0, 2.0,
];

unsafe {
    dgemm(b'N', b'N', m, n, k, 1.0, &a, m, &b, k, 1.0, &mut c, m);
}

assert!(
    c == vec![
        40.0,  90.0,
        50.0, 100.0,
        50.0, 120.0,
        60.0, 130.0,
    ]
);

Contribution

Your contribution is highly appreciated. Do not hesitate to open an issue or a pull request. Note that any contribution submitted for inclusion in the project will be licensed according to the terms given in LICENSE.md.

Dependencies

~245–350KB