Skip to main content

Multiple In Multiple Out Configurable Ring Buffer manager

Project description

Introduction

What is mimoCoRB2?

mimoCoRB2 (multiple in multiple out configurable ringbuffer manager) provides a central component of each data acquisition system needed to record and preanalyse data from randomly occurring processes. Typical examples are waveform data as provided by detectors common in quantum mechanical measurements, or in nuclear, particle and astro particle physics, e. g. photo tubes, Geiger counters, avalanche photo-diodes or modern SiPMs. The random nature of such processes and the need to keep read-out dead times low requires an input buffer for fast collection of data and an efficient buffer manager delivering a constant data stream to the subsequent processing steps. While a data source feeds data into the buffer, consumer processes receive the data to filter, reduce, analyze or simply visualize the recorded data. In order to optimally use the available resources, multi-core and multi-processing techniques must be applied.

This project originated from an effort to structure and generalize data acquisition for several experiments in advanced physics laboratory courses at Karlsruhe Institute of Technology (KIT) and has been extensively tested with Ubuntu Linux.

What can it do?

Amongst the core features of mimoCoRB2 are:

  • multiprocessing safe ringbuffer for NumPy structured arrays
  • setup of multiple ringbuffers and workers from configuration files
  • templates for common interactions between buffers (importing/exporting, filtering, processing, observing)
  • pre built functions for common operations (oscilloscope, histogram, pulse height analysis)
  • gui for monitoring and controlling the system

Running an example

Clone this repo and move into the directory

pip install .
mimocorb2 examples/muon/spin_setup.yaml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mimocorb2-0.0.4.tar.gz (43.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mimocorb2-0.0.4-py3-none-any.whl (51.2 kB view details)

Uploaded Python 3

File details

Details for the file mimocorb2-0.0.4.tar.gz.

File metadata

  • Download URL: mimocorb2-0.0.4.tar.gz
  • Upload date:
  • Size: 43.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for mimocorb2-0.0.4.tar.gz
Algorithm Hash digest
SHA256 95b34f8c8105cb053fd54571070a4eacd0a4eecac9903e3d68049fa301971fa3
MD5 6ddad10f8bb9e1eb71fee2a6de3d3346
BLAKE2b-256 f91a47fa4d584f34b08124dd5b16985176a6816c325f2d4756ac7bb47a7bcbaf

See more details on using hashes here.

File details

Details for the file mimocorb2-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: mimocorb2-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 51.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for mimocorb2-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 14b5096369847b4cb83f6c6d4f393156682f42a635e68f13cd2b4a9c9a8e035b
MD5 b890f13144653b06fbb73a76e878e8ba
BLAKE2b-256 668f003a41f6f0448a342b5b6312d036f5d33eaf40cf8d061334b66cd61e82f9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page