JuliaSIMD / JuliaSIMD/Polyester.jl
Polyester makes FFTW slower
- Dominant language
- Julia
- Stars
- 285
- Forks
- 20
- PR merge metrics
- No merged PRs in 30d
Description
Hi Chris,
I have tracked down a multi-threading performance issue and am now at a point where I am sure that Polyester is the cause (or my usage of Polyester).
I put together an MWE. One needs to dev `NFFT` and then execute
https://github.com/JuliaMath/NFFT.jl/blob/master/benchmark/performance_issue_mt.jl
with `julia -t 32` (or less).
What basically happens is that I have a Polyester threaded loop and afterwards call a threaded FFT. Now what happens is that the threaded Julia code makes the FFTW call slower. In my setting the FFT was slowed down by a factor of 5. Now what's interesting: If I switch from `@batch` to `Threads.@threads` then I have no performance issue.
To toggle between both version one need to change this line: https://github.com/JuliaMath/NFFT.jl/blob/master/src/utils.jl#L6
and restart Julia. I hope this description is sufficient.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.