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.1.tar.gz (42.2 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.1-py3-none-any.whl (50.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mimocorb2-0.0.1.tar.gz
  • Upload date:
  • Size: 42.2 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.1.tar.gz
Algorithm Hash digest
SHA256 7477e8cf91fef6db13394547d249c80f0c9e09d50c50c2eada63a02f8a86f710
MD5 fc4b1a870713f61b06f34788a25df325
BLAKE2b-256 0e1334cc3c6b16224ee7b5df36f37c4b4e87d4bdc77a8f4c8b5c64ac00b4925b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mimocorb2-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 50.0 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7bc7393f26596f67042300b46ffb6a247f068a8fe3f9e93315820f6d8e5908f3
MD5 6de47ca6b5a9e4d23f1265715299e413
BLAKE2b-256 67379fd72c79ebedcd6cfa2d8645edf2dad6357ba704b407ebdd1f268a7958ae

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