jatinchowdhury18 / RTNeural

Real-time neural network inferencing
BSD 3-Clause "New" or "Revised" License
551 stars 57 forks source link

Use Armadillo as backend #43

Open AlessandroProverbioFX opened 2 years ago

AlessandroProverbioFX commented 2 years ago

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.

jatinchowdhury18 commented 2 years ago

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:

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!

AlessandroProverbioFX commented 2 years ago

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!

jatinchowdhury18 commented 2 years ago

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 :)