文件名称:matrixmultiply:Rust中f32和f64矩阵的通用矩阵乘法。 支持大步前进的矩阵
文件大小:57KB
文件格式:ZIP
更新时间:2024-05-20 18:24:05
rust rust-sci Rust
矩阵乘法 f32,f64矩阵的通用矩阵乘法。 在具有常规布局的矩阵上运行(它们可以使用任意的行和列步幅)。 请在阅读 目前,我们提供了一些适用于x86-64的良好的便携式微内核,并且仅提供了一种操作:通用矩阵-矩阵乘法(“ gemm”)。 此板条箱的灵感来自项目使用的tmacro / microkernel矩阵乘法方法。 发展目标 代码的清晰性和可维护性 便携性和稳定的Rust 性能:在有益时提供特定于目标的微内核 测试:测试各种输入,并对所有微内核进行测试和基准测试 代码占用量少,编译速度快 我们不会重新实施BLAS。 有关此板条箱的博客文章 近期变动 0.3.1 尝试修复错误#55,是因为TLS中的掩码缓冲区似乎未在macOS上达到其要求的对齐方式。 现在,将掩码缓冲区指针手动对齐(再次,就像在0.2.x中一样)。 修复了一个小问题:当缓冲区指针应为&[T]时,我们将其传递为
【文件预览】:
matrixmultiply-master
----README.rst(7KB)
----spare kernels()
--------x86_sse_sgemm.rs(3KB)
----LICENSE-MIT(1KB)
----LICENSE-APACHE(11KB)
----docs()
--------sgemm4x8.log(773B)
--------sgemm4x4.log(776B)
--------0.2.0-avx-64.log(128B)
--------onealloc_after.log(2KB)
--------after-always-masked(495B)
--------0.2.1-avx-64.log(132B)
--------onealloc_before.log(2KB)
--------before-always-masked(495B)
--------dgemm4x4_rust.log(490B)
----.github()
--------workflows()
----ensure_no_std()
--------src()
--------Cargo.toml(276B)
--------.gitignore(19B)
----blas-bench()
--------build.rs(335B)
--------src()
--------Cargo.toml(585B)
--------benches()
--------README.md(501B)
----tests()
--------sgemm.rs(13KB)
----src()
--------aligned_alloc.rs(2KB)
--------loopmacros.rs(3KB)
--------archparam.rs(1KB)
--------util.rs(2KB)
--------threading.rs(8KB)
--------x86()
--------gemm.rs(17KB)
--------ptr.rs(1KB)
--------debugmacros.rs(662B)
--------dgemm_kernel.rs(29KB)
--------lib.rs(4KB)
--------kernel.rs(3KB)
--------sgemm_kernel.rs(19KB)
----Cargo.toml(1KB)
----benches()
--------benchmarks.rs(6KB)
----examples()
--------usegemm.rs(7KB)
--------benchmark.rs(10KB)
----.gitignore(19B)