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.3.tar.gz (42.8 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.3-py3-none-any.whl (50.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mimocorb2-0.0.3.tar.gz
  • Upload date:
  • Size: 42.8 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.3.tar.gz
Algorithm Hash digest
SHA256 63448bcd699bb20572cc9b3e45f469f19fa3d978d721a904be1e0f7139c761b4
MD5 a78c7ba8d61874d2525a83ed934e25a4
BLAKE2b-256 b2c2a46661d5f7edeeb9ca98984a7c3a69608b1efd0a34bb3d77af5a937a4b05

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mimocorb2-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 50.9 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d8740399cdce707959188f249dc2a32c2cf8cf6e20d10fd1db722f5bc31041a2
MD5 d68b32e6569a498e6adce7bf0264def2
BLAKE2b-256 4b2a14a134a31add0a3cdb8b2590669fae2cd27331800051260a9f8fb0fc3f06

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