qibosoq

QIBO Server On Qick (qibosoq) is the server component of qibolab to be run on RFSoC boards


Keywords
fpga, quantum, quantum-computing
License
Apache-2.0
Install
pip install qibosoq==0.1.2

Documentation

Qibosoq

codecov PyPI - Version PyPI - Python Version

Repository for developing server side of RFSoC fpga boards Qibosoq is a server for integrating Qick in the Qibolab ecosystem for executing arbitrary pulses sequences on QPUs.

Documentation

docs

The complete documentation can be found at:

Installation

Please refer to the documentation for installation instructions.

Configuration parameters

In configuration.py some default qibosoq parameters are hardcoded. They can be changed using environment variables (see documentation).

  • IP of the server
  • Port of the server
  • Paths of log files
  • Name of python loggers
  • Path of bitstream
  • Type of readout (multiplexed or not, depending on the loaded bitstream)

Run the server

The simplest way of executing the server is:

sudo -E python -m qibosoq

and the server can be closed with Ctrl-C.
Note that with this command the script will close as soon as the terminal where it's running is closed. To run the server in detached mode you can use:

nohup sudo -E python -m qibosoq &

And the server can be closed with sudo kill <PID> (PID will be saved in log).

Supported QICK version

QICK is an evolving project, and as such, Qibosoq frequently adapts to its changes to ensure ongoing support. The table below provides a brief overview of the supported QICK versions corresponding to specific Qibosoq releases.

Qibosoq version Supported QICK version
0.1.0 0.2.135
0.1.1 >=0.2.165, <=0.2.181
0.1.2 >=0.2.211, <=0.2.249

TII boards

With TII boards the server can also be executed using the alias server-run-bkg.

Also, two additional command are added in .bashrc: serverinfo and serverclose. serverinfo will print the PID if the server is running, otherwise will print "No running server". serverclose will close the server, if it is running.

All these commands require sudo privileges.

Contributing

Contributions, issues and feature requests are welcome! Feel free to check GitHub issues

Citation policy

arXiv DOI

If you use the package please refer to the documentation for citation instructions