Use Armadillo as backend
AlessandroProverbioFX opened this issue · 3 comments
Hi,
First of all, thank you for this amazing work! I would like to suggest another backend, Armadillo (http://arma.sourceforge.net). I remember from some past work I've done that it was extremely fast, even faster than Eigen.
Hi!
Yeah, having an Armadillo backend could be cool... though I would be curious to see some data comparing benchmarks between Armadillo and Eigen. That said, I'm a little bit hesitant to add new backends, since it makes maintenance dev work take a good bit longer.
Anyway, here would be the steps for adding an Armadillo backend:
- Add Armadillo as a submodule, or add instructions for how the user can install Armadillo on their system
- Add CMake options and target definitions for the new backend
- Implement layers and activation functions with the new backend
- Update tests and benchmarks to include the new backend
I don't really have much time to start working on this at the moment, but if you or someone else would like to get started, I would be happy to support!
Hi,
I have used both of them (Eigen and Armadillo) some years ago in a Wave Digital Filters project, and I remember that the Armadillo implementation was definitely faster. Unfortunately I don't have the code anymore, if I can find it I will make some comparisons.
I understand the complexity of this work!
By the way, I'm going to use RTNeural for the ML part of a new audio plugin!
For sure! I might have some time in the next week or two to investigate a little more as well.
Very cool! I'm always excited to see/hear any new plugins with ML :)