Support FFT of split complex representation
- Dominant language
- Julia
- Stars
- 300
- Forks
- 61
- PR merge metrics
- No merged PRs in 30d
Description
Moved from https://github.com/JuliaLang/julia/issues/12398
-------------------
As shown by @simonster (https://github.com/simonster/StructsOfArrays.jl), Structure of Array is much easier to vectorize. Using `StructOfArrays(Complex64)` and `@simd` I can see a speed up of `>2x`. However, it seems that this is not very well supported by our fft API.
As @simonster suggested, I tried to implement FFT on `StructOfArrays` using `fftw_plan_gure64_split_dft`. The non-plan version works greet. However, I get SegFault when trying to use the plan interface. It seems that fftw assumes that the relative address between the real and complex part is fixed and therefore is not accessing the right address when I pass in a different array.
Is there a fftw interface that can be used to implement this?
@stevengj
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.