cblas-sys
matrixmultiply
Our great sponsors
cblas-sys | matrixmultiply | |
---|---|---|
1 | 4 | |
4 | 202 | |
- | - | |
10.0 | 6.0 | |
over 3 years ago | about 2 months ago | |
Rust | Rust | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cblas-sys
-
Faster `matrixmultiply` ?
I've switched to just using the AMD BLIS library, and linking through cblas-sys. One day I would like to rewrite a matmul and convolution library with packed-simd-2 or portable-simd when they and const generics are finished.
matrixmultiply
-
Help understanding the state of ndarrays and linalg in Rust.
The matrixmultiply crate from the ndarray author (https://github.com/bluss/matrixmultiply) is one such implementation. It uses the same algorithm as the BLIS project (https://www.cs.utexas.edu/users/flame/pubs/TOMS-BLIS-Analytical.pdf) to partition the problem and exploit the cache hierarchy. It isn't as well tuned as eg. Intel MKL or BLIS, but the results are very respectable.
-
faer 0.8.0 release
Do you plan to support integers as native types? I know there is an issue for the crate matrixmultiply for that, it seems it can be problematic because of overflow.
-
Faster `matrixmultiply` ?
There's a famous crate [matrixmultiply](https://github.com/bluss/matrixmultiply) for matrix-matrix multiplication in Rust. But it's a bit slow for me.
-
Nim vs Rust Benchmarks
In my benchmarks, Nim is faster than Rust:
- multithreading runtime (i.e Rayon vs Weave https://github.com/mratsim/weave)
- Cryptography: https://hackmd.io/@gnark/eccbench#Pairing
- Scientific computing / matrix multiplication: https://github.com/bluss/matrixmultiply/issues/34#issuecomme...
There is no inherent reason why a Nim program would be slower than Rust.
What are some alternatives?
matrixmultiply_mt - A Multithreaded, processor specialized, fork of the matrixmultiply crate
weave - A state-of-the-art multithreading runtime: message-passing based, fast, scalable, ultra-low overhead
rust-ndarray - ndarray: an N-dimensional array with array views, multidimensional slicing, and efficient operations
Programming-Language-Benchmarks - Yet another implementation of computer language benchmarks game
Programming-Language-Benchmark
Graal - GraalVM compiles Java applications into native executables that start instantly, scale fast, and use fewer compute resources 🚀
faer-rs - Linear algebra foundation for the Rust programming language
rust - Empowering everyone to build reliable and efficient software.
nalgebra - Linear algebra library for Rust.
cosmopolitan - build-once run-anywhere c library
manim - Animation engine for explanatory math videos