|
|
|
|
|
by foolEngi
1143 days ago
|
|
Nice work! It takes decent dedication and effort to maintain an underappreciated low-level mathematics library. Unfortunately, Google seemed to have developed its own multi-dimensional array library as well, featuring virtual views, handling of large arrays that cannot fit into main memory, compression and more:
https://github.com/google/tensorstore
https://ai.googleblog.com/2022/09/tensorstore-for-high-perfo... What are `librapid`'s strengths and unique features compared to Google's `Tensor Store`? Being lightweight might be one. |
|
It also has seamless CUDA integration, allowing you to perform operations on the GPU by simply changing the tempate argument to your array definitions. For example, `auto cpuArray = lrc::Array<float>(...);` and `auto gpuArray = lrc::Array<float, lrc::device::GPU>(...)`.
It appears to me that TensorStore's primary focus is storing the arrays, not providing high-performance routines to manipulate them.
Regarding the features you mentioned, LibRapid provides an ArrayView class, which provides strided read and write access to any Array type. I'm also planning on impementing a method to save and load arrays from files, so it might be possible to implement some form of compression into that process.
Hopefully this helps!