Bifrost: a Python/C++ Framework for High-Throughput Stream Processing in Astronomy
Miles D. Cranmer, Benjamin R. Barsdell, Danny C. Price, Jayce Dowell,, Hugh Garsden, Veronica Dike, Tarraneh Eftekhari, Alexander M. Hegedus, Joseph, Malins, Kenneth S. Obenberger, Frank Schinzel, Kevin Stovall, Gregory B., Taylor, Lincoln J. Greenhill

TL;DR
Bifrost is an open-source Python/C++ framework designed to facilitate high-throughput, real-time data processing pipelines in radio astronomy, enabling rapid development and efficient handling of large data streams.
Contribution
It introduces a flexible, high-performance software framework combining Python and C++ for real-time data processing in radio astronomy, streamlining pipeline development.
Findings
Successfully used in the Long Wavelength Array for correlation and beamforming.
Supports processing of continuous data streams and partitioned data sequences.
Enables efficient CPU and GPU processing for various radio astronomy applications.
Abstract
Radio astronomy observatories with high throughput back end instruments require real-time data processing. While computing hardware continues to advance rapidly, development of real-time processing pipelines remains difficult and time-consuming, which can limit scientific productivity. Motivated by this, we have developed Bifrost: an open-source software framework for rapid pipeline development. Bifrost combines a high-level Python interface with highly efficient reconfigurable data transport and a library of computing blocks for CPU and GPU processing. The framework is generalizable, but initially it emphasizes the needs of high-throughput radio astronomy pipelines, such as the ability to process data buffers as if they were continuous streams, the capacity to partition processing into distinct data sequences (e.g., separate observations), and the ability to extract specific intervals…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
