Skip to content

Releases: AxFoundation/redax

Dispatcher v4.1.1

09 Jun 09:00
Compare
Choose a tag to compare

Like a numpty, I forgot to include the uncommited changes on the production deployment. See https://github.com/AxFoundation/redax/releases/tag/dispatcher_v4.1.0 for the "full" details.

Dispatcher v4.1.0

09 Jun 08:57
eafe596
Compare
Choose a tag to compare

A variety of tweaks and improvements since the last release, including:

  • The dispatcher's command queue moves from the database into memory (#39)
  • Integrated hypervisor (#40)
  • Simplified source field in rundocs (#43)
  • Caches run start times, so the DB doesn't get constantly hammered (#45)
  • More logging when the hypervisor does things (#47)
  • Fixes for various edge case in the logic (#55)
  • Stores non-reporting channels in the rundoc at the end of a run (#57) (TPC LE only)
  • Hopefully fixes some logic around the hypervisor nuclear option (#58)
    This version will likely be the production version for the next few months as it seems to be stable, and the opportunity to test #51 hasn't yet happened.

Dispatcher v4

29 Mar 07:16
d22e8ed
Compare
Choose a tag to compare

The dispatcher hasn't gotten tagged releases, and this has caused a variety of issues. Here's a (probably nonfunctional) v4.0.0, patches almost certainly coming in the next few days.

Version 2.1

19 Feb 14:38
Compare
Choose a tag to compare

Redax version 2.1!

New features:

  • XENONnT-style structured logging (#15)
  • New version of the baseline routine (#9, #4)
  • V1495 subclasses for maximum flexibility (#1)
  • Version information baked into the executable (#12)
  • Fax crate controller (#5)

Bugs squashed:

  • Fix for subclasses not properly initializing (#14)
  • Software fix to mitigate spurious rollovers (#8)

Also a variety of dispatcher fixes, but we won't list them here.

Version 2.0

29 Oct 17:25
Compare
Choose a tag to compare

(Copied from https://github.com/coderdj/redax/releases/tag/v2.0.0)
Redax version 2 features overhauled memory management, improved mutex handling, and more coherent usage.

  • Automatic cleanup: raw pointers to structs containing raw pointers are replaced with managed pointers to structs containing strings, so the memory is automatically released once it goes out of scope
  • Lots of std::move in strategic locations
  • Data moves from readout threads to processing threads via a round-robin push fashion, rather than by being pulled via one central buffer. This increases the effective number of mutexes, which boosts throughput under very high load, and removes the edge case where a processing thread might not receive data for an entire run.
  • More command-line arguments for finer control of certain parameters (mainly --log-retention and --arm-delay)
  • More config fields for finer control of certain parameters (mainly us_between_reads)
  • Simplified the process of adding support for new digitizer models/firmwares. Now, the user need only implement one or two functions and set one or two members, as opposed to filling in obscure values in a dictionary and then possibly also making changes in two other locations.
  • Now a single executable, rather than two separate build targets. Functionality is specified via the --reader and --cc CLAs.