The software stack will for many scientists be the first and main interaction point with the Advanced Quantum Testbed. Unique to the AQT, however, software access for our users is not restricted to the high level, where we seamlessly integrate the existing Open Source quantum computing software development frameworks. Indeed, we are delivering a software stack with application programming interfaces (APIs) at a range of different abstraction levels. This enables users to get as close or as far from the hardware as necessary to reach their desired scientific goals.

We are developing a modular quantum control software framework (QTROL) that can be programmed directly through OpenQASM, and which has drivers to support different hardware solutions; control components that can be run from software or in hardware; an analysis workflow with components that can likewise be run in hardware or software; and backend support for data management and provenance for reproducability of published scientific results.

Our approach allows for fast-feedback experiments, detailed pulse design and optimization, optimal control, development of parametrized circuits, and the comparison and evaluation of hardware solutions.

We have build drivers to support both the Zurich Instruments (ZI) quantum hardware and our own in-house, QubiC, solution. Waves can be constructed fully in software or build in hardware from basic components; drive wave modulation and readout demodulation can be pre-calculated in software or done in hardware, if the backend supports it.

We have developed a fast vector upload, with cache-optimized layout, for the ZI Arbitrary Waveform Generators (AWGs), by-passing the expensive compilation step and so reducing circuit upload times by two orders of magnitude. Multi-program construction allows for fast, software- or hardware-driven, switching between different circuits or mappings within a single experiment.

Pulses can be constructed from a library of parametrized, commonly used, envelope functions, or designed offline by users and uploaded directly.

Measurement classification, through Gaussian mixture modes, rotations, and thresholding, can be done in hardware, for fast feedback on qubits, or in software post-processing for detailed analysis and to support qudits.

Current Status & Next Steps

In the current approach, circuits are precompiled. However, we expect parametrized circuits to have important use cases such as randomized compilation and the Variational Quantum Eigensolver (VQE). We want to combine the benefits of fast vector uploads and multi-program construction to support parametrization.

We are looking to integrate more commonly used Open Source software for e.g. pulse design and quantum computing workflows as they become available.