Speaker
Description
Dadaflow is a new open source C++/CUDA library for the rapid development of high-performance, modular radio astronomy processing pipelines. Exploiting recent C++20 features, it provides strongly typed multidimensional data structures, a robust graph-based pipelining framework, and tooling for runtime control and interprocess communication. At its core, Dadaflow represents processing pipelines as asynchronous directed acyclic graphs (DAGs), where processes (nodes) execute concurrently and communicate via thread-safe queues. Memory management is optimized through resource pools, reducing allocation overhead while maintaining thread safety. Developers may compose graphs from arbitrary callables (functions, functors, lambdas, etc.), with the library automatically provisioning queues and ensuring the graph’s topological correctness. External control and monitoring are supported through POSIX message queues and self-describing shared memory buffers, enabling real-time parameter updates and system introspection. Dadaflow has already been applied to the development of correlators, beamformers, and spectrometers for both single-dish instruments (including phased array feeds) and antenna arrays. Its modular design lowers the barrier to implementing high-performance pipelines on commodity and GPU-accelerated hardware, while promoting the creation of reusable processing components. This poster will present the architecture of Dadaflow, demonstrate common usage patterns, and highlight applications to real-time radio astronomy data processing, emphasizing its flexibility, type safety, and performance advantages.
| Affiliation of the submitter | MPIfR |
|---|---|
| Attendance |