Skip to content

fix: adjust acquisition redesign related features

Explanation of changes

Some adjustments and fixes related to acquisitions.

  • Reintroduce errors instead of warnings for acquisition index generation logic (we will remove some exceptions from Qblox backends, and reintroduce them here).
  • For binned acquisitions, append bin mode, the repetitions are handled now correctly with QbloxAcquisitionIndexManager.
  • Trigger count acquisition adjustments (reserves the correct amount of bins) in QbloxAcquisitionIndexManager.
  • Trace acquisition, we only need to reserve just one bin in QbloxAcquisitionIndexManager.
  • Trace acquisition, allow same channel multiple times (for example to average the trace).
  • Fix Serialization/deserialization of the CompiledSchedule: it now uses the deserialization_type, and calls it's super too.
  • Fix "TriggerCount" protocol for SUM bin mode: it acts the same way as AVERAGE bin mode binned acquisitions.
  • Add thresholded trigger count metadata for the hardware acquisition mapping; this will be used later in the instrument coordinator.
  • Split up _is_binned_acquisition_type to _is_acquisition_binned_average and _is_acquisition_binned_append, because whether something is average or append mode needs to be universally checked in multiple places instead of just checking whether something is binned.
  • "TimetagTrace" reserves the bins just as an append mode binned acquisition now. The reason is that from that perspective (bin reservation) it works exactly like that, but in the instrument coordinator it will not get data from the same place as other binned acquisitions (out of scope of this MR to change the instrument coordinator).

Related to &5 (closed) .


Merge checklist

See also merge request guidelines

  • Merge request has been reviewed (in-depth by a knowledgeable contributor), and is approved by a project maintainer.
  • New code is covered by unit tests (or N/A).
  • New code is documented and docstrings use numpydoc format (or N/A).
  • New functionality: considered making private instead of extending public API (or N/A).
  • Public API changed: added @deprecated and entry in deprecated code suggestions (or N/A).
  • Newly added/adjusted documentation and docstrings render properly (or N/A).
  • Pipeline fix or dependency update: post in #software-for-developers channel to merge main back in or update local packages (or N/A).
  • Tested on hardware (or N/A).
  • CHANGELOG.md for breaking changes and AUTHORS.md have been updated (or N/A).
  • Update Hardware backends documentation if backend interface change or N/A
  • Check whether performance is significantly affected by looking at the Performance metrics results.
  • Windows tests in CI pipeline pass (manually triggered by maintainers before merging).
    • Maintainers do not hit Auto-merge, we need to actively check as manual tests do not block pipeline

For reference, the issues workflow is described in the contribution guidelines.

Edited by Gábor Oszkár Dénes

Merge request reports

Loading