This is a collection and summary of benchmarks and comparisons of dedoppler/dedispersion algorithms.
DeDoppler Pipelines:
- turboSETI
- hyperSETI
- SETIcore
DeDispersion Algorithms:
- CPU Fast Dispersion Measure Transform (FDMT) in Python (pyfdmt)
- GPU FDMT in Python (from Bifrost)
- CPU FDMT in Julia (FastDMTransform.jl)
- CPU Brute-Force Dedispersion in Julia (Dedisp.jl)
- GPU Brute-Force Dedispersion in Julia (Dedisp.jl)
- GPU Brute-Force Dedispersion in C/C++ (Dedisp library)
- GPU Fourier Domain Dedispersion in C/C++ (Dedisp library)
See dedispersion_runtime_comparison.pdf
For more information, look at the comprehensive benchmark results document (to be released later).
We used the installed turbsoSETI command line utility on the public Breakthrough Listen servers.
Codebase: https://github.com/UCBerkeleySETI/hyperseti
Specific Python package versions will be found in the comprehensive document.
We used the installed seticore command line utility on the public Breakthrough Listen servers.
Codebase: https://bitbucket.org/vmorello/pyfdmt/src/master/
Codebase: https://github.com/ledatelescope/bifrost
Codebase: https://github.com/max-Hawkins/FastDMTransform.jl Note: This fork is used to test against a single-threaded FDMT implementation that's a more fair comparison to pyfdmt.
Codebase: https://github.com/max-Hawkins/Dedisp.jl Note: This fork is used to remove the loop vectorization helper to make a more fair comparison.
Codebase: https://github.com/max-Hawkins/Dedisp.jl Note: This fork is used to remove the normalization step after dedispersion.
Codebase: https://github.com/kiranshila/dedisp
Codebase: https://github.com/kiranshila/dedisp