#matrix #matrix-vector #linear-algebra #no-std #compile-time #matrix-math

yanked matrs

A package for creating statically sized and typed matrices and vectors

0.2.0 Sep 7, 2022
0.1.1 May 24, 2022
0.1.0 May 24, 2022

#15 in #nostd

45 downloads per month

MIT license

6MB
1.5K SLoC

Contains (WOFF font, 680KB) docs/doc/NanumBarunGothic.ttf.woff, (WOFF font, 680KB) doc/doc/NanumBarunGothic.ttf.woff, (WOFF font, 400KB) doc/doc/NanumBarunGothic.ttf.woff2, (WOFF font, 400KB) docs/doc/NanumBarunGothic.ttf.woff2, (WOFF font, 190KB) doc/doc/FiraSans-Medium.woff, (WOFF font, 135KB) doc/doc/FiraSans-Medium.woff2 and 30 more.

matrix_math

build run_tests

What is this?

This is my matrix math library, it is at worst linear memory and hopefully constant memory for everything that does not need instantiation of temporary variables. It is also written to allocate memory at compile time and not use dynamic memory allocation. This is done to optimize it for embedded systems and neural networks where we know the size of each layer, it is not good for neat tho, as that would require a lot of reallocating memory.

So you want to use this in your project?

Just add this line to your cargo.toml

matrs = "0.2.0"

How it works

Matrices and vectors support the basic linear algebra operations. Read through the docs for more information.

Future plans

  • Implement usage of tpu and gpus for faster computation.
  • Implement usage of multiple threads for faster computation.
  • Implement more optimized algorithms.
  • Implement for specific compile targets, such as RISC-v vector extensions.
  • Implement more mathematical operations
  • Implement more rigorous error handling.

License

This software is provided with zero warranty. And it is free to use. For more info please see the license

Contributing

Before contributing please read the entire docs to make sure you understand what the goal of the project is. Also, read the contributing guide ( Not done yet ), then if you have any questions please ask on the github issues. Finally when you have any code to submit feel free to fork the repo and submit a pull request.

Dependencies