Glossary

vQPU
virtual QPU

A classical process running on an HPC environment with an allocated set of classical resources that simulates the behaviour of a real QPU. It is composed of a server (manages user–vQPU communication) and a simulator (performs the actual execution). See Virtual QPU.

QPU

In this documentation, the QPU Python object that represents a deployed vQPU and is used to submit quantum tasks to it. Also refers to real quantum hardware (e.g. CESGA’s QMIO), which can be deployed alongside vQPUs.

family

A name that identifies a group of vQPUs deployed together by a single qraise call. It is set with the --family flag (Bash) or the family argument (Python) and is later used to select (get_QPUs) or release (qdrop) that group. If not provided, it defaults to the SLURM job id of the deployment.

co-located mode

Deployment mode in which a vQPU can be accessed from any node, not only the one it was deployed on. Enabled with --co-located (Bash) / co_located=True (Python). The alternative is hpc mode.

hpc mode

Default deployment mode in which a vQPU can only be accessed from the node on which it was deployed. Contrast with co-located mode.

DQC
Distributed Quantum Computing

Computing paradigm in which a quantum computation is distributed across several QPUs. CUNQA emulates DQC architectures and supports three schemes: embarrassingly parallel, classical communications and quantum communications.

embarrassingly parallel

DQC scheme with no inter-QPU communication: independent quantum tasks are mapped to the available vQPUs. Also referred to as the no-communications (NC) scheme.

classical communications

DQC scheme (CC) in which vQPUs exchange classical bits (measurement outcomes) during execution to classically condition operations on remote qubits.

quantum communications

DQC scheme (QC) in which vQPUs share quantum entanglement via the teledata and telegate protocols.

data qubit

A computation qubit of a circuit, used to carry out the quantum algorithm.

communication qubit
comm qubit

A qubit reserved for inter-vQPU quantum communication (entanglement generation in teledata and telegate). Declared with the tuple form CunqaCircuit((num_data_qubits, num_comm_qubits), num_clbits).

teledata

Quantum-communication protocol that teleports the state of a data qubit from one circuit to another. Exposed through qsend / qrecv.

telegate

Quantum-communication protocol that shares a control qubit across vQPUs so that a remote controlled gate can be applied locally. Exposed through cat_entangler / cat_disentangler.

backend

The configuration describing the device a vQPU emulates (basis gates, coupling map, noise model, simulator, …). Provided as a JSON file through --backend / backend and represented in Python by Backend.

simulator

The software library that performs the quantum simulation inside a vQPU (e.g. Aer, Munich, Qulacs). Selected with --simulator; see Simulators.