54 releases

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

#113 in Math

Download history 2580/week @ 2024-10-27 3205/week @ 2024-11-03 2779/week @ 2024-11-10 2253/week @ 2024-11-17 1779/week @ 2024-11-24 2368/week @ 2024-12-01 2382/week @ 2024-12-08 2671/week @ 2024-12-15 1036/week @ 2024-12-22 2189/week @ 2024-12-29 3927/week @ 2025-01-05 2764/week @ 2025-01-12 2933/week @ 2025-01-19 4442/week @ 2025-01-26 5635/week @ 2025-02-02 3100/week @ 2025-02-09

16,318 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