AidaDSP / aidadsp-lv2

Aida DSP's audio plugins in lv2 format
GNU General Public License v3.0
35 stars 9 forks source link

Discussion: xsimd vs eigen #7

Open falkTX opened 1 year ago

falkTX commented 1 year ago

Taking a little step back, what is the purpose for using one vs the other? Is xsimd supposed to be more performant? Did we measure this?

MaxPayne86 commented 1 year ago

So the better person to answer this question is Jatin (RTNeural). From various discussions with him, xsimd should provide better performance. But in any case: what I would like to do is a benchmark test here https://github.com/jatinchowdhury18/RTNeural/tree/main/tests. Some reference https://github.com/xtensor-stack/xtensor-benchmark. We definitely want to create this test in any case to track performance regressions among build envs, cxxflags, etc.

MaxPayne86 commented 1 year ago

@falkTX some useful features have been added to RTNeural, like benchmarks in CI, see for example

https://github.com/jatinchowdhury18/RTNeural/actions/runs/4582045465/jobs/8091991439

for a direct answer to the question, I would report what's in RTNeural/README.md

In general, the Eigen backend typically has the best performance for larger networks, while smaller networks may perform better with XSIMD. However, it is recommended to measure the performance of your network with all the backends that are available on your target platform to ensure optimal performance