IQM
Run on IQM's Garnet and Emerald superconducting QPUs through qBraid, with only a qBraid API key.
Devices on qBraid
IQM’s superconducting QPUs are on qBraid through two submission paths. Each path has its own device IDs and billing.
| Device ID | Device | Path |
|---|---|---|
aws:iqm:qpu:garnet | Garnet, 20 qubits | Amazon Braket |
aws:iqm:qpu:emerald | Emerald, 54 qubits | Amazon Braket |
openquantum:iqm:qpu:garnet | Garnet, 20 qubits | Open Quantum |
openquantum:iqm:qpu:emerald | Emerald, 54 qubits | Open Quantum |
Check each device’s status and price in the device catalog before you submit.
Quick start
from qbraid.runtime import QbraidProvider
provider = QbraidProvider()
device = provider.get_device("aws:iqm:qpu:garnet")
bell = """
OPENQASM 3.0;
include "stdgates.inc";
qubit[2] q;
bit[2] c;
h q[0];
cx q[0], q[1];
c = measure q;
"""
job = device.run(bell, shots=100)
print(job.result().data.get_counts())Through Amazon Braket
aws:iqm: devices go through Amazon Braket, billed in qBraid credits. Write standard gates on qubits 0..n-1. Braket compiles them to IQM’s two native gates, prx and cz, and chooses the physical qubits. Amazon Braket explains the compilation, how your counts are ordered, and how to retrieve the compiled program to see which physical qubits your job ran on.
Garnet and Emerald report live calibration data through qBraid. Calibrations shows how to fetch it, plot the connectivity graph, and pick the best qubits for your circuit.
aws:iqm: devices take Braket runtime options. For example, IQM’s dynamic circuits, with mid-circuit measurement, are a Braket experimental capability:
job = device.run(
program,
shots=100,
runtime_options={"experimental_capabilities": "ALL"},
)Through Open Quantum
openquantum:iqm: devices go through Open Quantum and spend credits from an Open Quantum account linked to qBraid, not qBraid credits. Link the account first, then submit as usual:
device = provider.get_device("openquantum:iqm:qpu:garnet")
job = device.run(bell, shots=100)See Open Quantum for linking an account and what these devices accept.
Related links
- Run on qBraid: installing the SDK and saving your qBraid API key
- Batch & group jobs: running several circuits as separate, batch, or group jobs
- Amazon Braket: compilation, bit ordering, and the compiled program for
aws:*devices - Amazon Braket (self-managed): IQM devices with your own AWS account, including verbatim compilation
- IQM documentation
Thanks for your feedback.

