Open m-rest opened 7 years ago
ArrayFire - http://arrayfire.com/
ArrayFire is an accelered computing library. The dev's of arrayfire have already work on a gpu backend for matlab (Mathworks). The same framework allow to use CPU, GPU or OpenCL processing backend without modifying source code. You can see with the benchmarks here (http://arrayfire.com/why-arrayfire/) that ArrayFire overpass not only armadillo and/or eigen performance, but ipp and/or mkl too.
This is not a Linear Algebra specific library, but the api contains almost all the needed method to port matlab code in the same way than armadillo. ArrayFire use a simple af::array object this can be vector 1D, matrix 2D, cube 3D, 4D and more dimensions (http://arrayfire.org/docs/gettingstarted.htm). ArrayFire allow to make parallelized-loop in a simple way with a simple "gfor" macro (http://arrayfire.org/docs/page_gfor.htm).
KFR - https://www.kfrlib.com/
KFR is a fast, modern C++ DSP framework. The library boasts of performance on FFT far superior than well-known library like : FFTW, KissFFT ... (https://www.kfrlib.com/storage/app/media/fft.png). Because the api is specialized on the signal processing, there's no matrix / linear algebra methods but a unified vector that use modern C++ method of optimization.
The good point of KFR (online since July 2016, actually a single 1.0 stable version and a 2.0 dev version) is that the library include some high quality sample rate conversion (SRC), and a lot of optimized filters that are ARM-ready. The documentation say >>> the library is optimized for Intel, AMD (SSE2, SSE3, SSE4.x, AVX and AVX2) and ARM (NEON) processors.
I think KFR can be a good starting point for additional projets like the actual "rt-wdf-renderer" that is linked to r8-brain-free-src to sampling rate conversion. Some benchmark need to be make to valid the interest of KFR because r8-brain is MIT license where KFR is more restrictive GPL/commercial.
In all case, KFR is a very impressive library for a 1.0 version !!!
https://software.intel.com/en-us/articles/free-ipp