JuliaMath / JuliaMath/FFTA.jl

Autovectorization and AbstractFFTs

Open
#77 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
74
Forks
8
Avg merge
13h 43m
Merged PRs (30d)
1

Description

I'm opening this issue to discuss something I started thinking about when working on #76. I have mixed feelings about ffts of lower dimension than the array. It feels like "autovectorization" which is generally avoided in other parts of Julia's multidimensional code. It would be more in line with the general array code to apply a lower-dimensional fft plan along some dimensions with something like `mapslices`.

Maybe some of this is imposed by `AbstractFFTs`, but I'm also now in doubt what this package really gains from using that interface. Some of the promotion methods might be convenient, but it isn't that big of a deal IMO, and it essentially forces the interface of FFTW while also introducing issues like #66. AbstractFFTs doesn't solve the problem of switching backends for downstream packages (although there is ongoing work that might change that), so I'm not sure if depending on AbstractFFTs is a net gain. My main goal with working on this package is to allow e.g. https://github.com/JuliaStats/KernelDensity.jl to work without FFTW, and there might be easier ways to allow for that than making changes to AbstractFFTs.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.