PSRDADA is an open-source software project to support the development of distributed systems for data acquisition and analysis; it is used primarily in the implementation of instrumentation for pulsar astronomy.
The modular design of PSRDADA includes a number of relatively small, independent processes that perform specific tasks, thereby neatly separating data transport, command and control, and data analysis. Data are transferred between processes via a flexible ring buffer in shared memory and a variety of internet protocols; configuration, control and monitoring of the various distributed processes is achieved via a combination of scripts, configuration files, text-based socket connections, and web-based user interfaces.
At the lowest level, PSRDADA is a flexible and well-managed ring buffer with a variety of applications for piping data from device to ring buffer and from ring buffer to device. More than one data set may be queued in the ring buffer at one time, and data may be recorded in selected bursts using data validity flags. A variety of clients have been implemented that can write data to the ring buffer and read data from it. The primary write clients can be controlled via a simple, text-based socket interface, and read client software exists for writing data to an array of disks, sending data to an array of nodes, or processing the data directly from RAM.
At the highest level of control and configuration, scripts have been written to launch the PSRDADA configuration across all nodes in the cluster, monitor all relevant processes, configure and control through a web-based interface, interface with observatory scheduling tools, and manage the ownership and archival of project data.
PSRDADA has been used to implement a wide variety of pulsar instruments, including:
- CPSR2, the second generation of the Caltech Parkes Swinburne Recorder
- PuMa-II, the second generation of the Dutch Pulsar Machine
- APSR, the ATNF Parkes Swinburne Recorder
- BPSR, the Berkeley Parkes Swinburne Recorder
- CASPSR, the CASPER Parkes Swinburne Recorder
The software is managed using an open-source version control system and installed and compiled using a cross-platform build system.
Related Data Collections:
Parkes observations for project P140: semester 1994AUGT - 2010OCTS (42 collections)