You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// To take advantage of SIMD auto-vectorization, and for consistent parameter smoothing,
While reading though the dsp code, I was wondering if the chunking for auto-vectorization is necessary. While reading this blog post, I was wondering if the chunking might even prevent AVX SIMD optimization, compared to iterator-based loops.
I haven't actually done any checking of the generated assembly, so it's entirely possible I'm doing something wrong/inefficient here. I adapted the chunking logic from a synthesizer I've been working on, where I actually used manual vectorization everywhere since some of the calculations are much less trivial. Passing around chunks in that context was much easier to work with.
I'm not too concerned about it here because this is a pretty simple demo plugin, but if you can make it faster without making the code significantly more complex, I'm happy to accept a PR!
ampli-Fe/src/dsp/mod.rs
Line 45 in a4af5ad
While reading though the dsp code, I was wondering if the chunking for auto-vectorization is necessary. While reading this blog post, I was wondering if the chunking might even prevent AVX SIMD optimization, compared to iterator-based loops.
I played around a bit: https://godbolt.org/z/YaYoW71jT
Add
-C target-feature=+avx2
to enable AVX.The text was updated successfully, but these errors were encountered: