Loading FastTransforms.jl can make FFTs via FFTW.jl 100x slower due to threading conflicts
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
While this is not a self-contained example, I would like to summarize an issue I had so that others may find it (and my workaround) when they search for it.
Loading FastTransforms.jl (import FastTransforms or using FastTransforms or loading a package depending on FastTransforms.jl) made some FFTs (of small real vectors with 256 to 4096 entries) via FFTW.jl roughly 100x slower on my system (when running Julia with one thread). Debugging this via the profiling tools showed that a huge amount of time was spent in __psynch_cvwait and __psynch_cvsignal. The reason appears to be
Reversing these settings by executing
FastTransforms.ft_set_num_threads(1)
ccall((:ft_fftw_init_threads, FastTransforms.libfasttransforms), Cint, ())
FastTransforms.ft_fftw_plan_with_nthreads(1)
after loading FastTransforms fixed the performance issue.
- Vorherrschende Sprache
- Julia
- Sterne
- 284
- Forks
- 28
- Ø Merge
- 9 Std. 21 Min.
- Gemergte PRs (30 T.)
- 2
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus JuliaApproximation/FastTransforms.jl
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 38/100
JuliaApproximation/FastTransforms.jl#266 · 1 Kommentar ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 42/100
JuliaApproximation/FastTransforms.jl#263 · 2 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
JuliaApproximation/FastTransforms.jl#257 · 1 Kommentar ·
-
Allocating lmul!Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
JuliaApproximation/FastTransforms.jl#253 · 7 Kommentare ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 45/100
Alle Issues in JuliaApproximation/FastTransforms.jl
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
JuliaLang/LinearAlgebra.jl#1834 ·
Maintainer antworten meist innerhalb von 1 Tag
-
`RawAcquisitionData(acqData)` writes the repetition into the `average` counterEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
MagneticResonanceImaging/MRIReco.jl#332 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Docstrings show df:DataFrame and an undefined function is exportedEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
chalk-lab/Mooncake.jl#1423 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag