Skip to main content

Quantum Backends

QCOS provides unified access to quantum hardware from multiple cloud providers. This guide covers all available backends, their capabilities, and best practices for each.

Backend Overview​

BackendProviderQubitsTypeBest For
IBM BrisbaneIBM Quantum127SuperconductingProduction workloads
IBM SherbrookeIBM Quantum127SuperconductingHigh-fidelity circuits
IBM HeronIBM Quantum133SuperconductingLatest technology
IonQ AriaAWS Braket25Trapped IonHigh connectivity
IonQ ForteAWS Braket36Trapped IonComplex algorithms
Rigetti Ankaa-3AWS Braket84SuperconductingFast execution
IQM GarnetAWS Braket20SuperconductingEuropean data residency
QuEra AquilaAWS Braket256Neutral AtomAnalog simulation
Quantinuum H1Azure Quantum20Trapped IonHigh fidelity
Quantinuum H2Azure Quantum32Trapped IonEnterprise workloads

IBM Quantum Backends​

IBM Brisbane​

job = client.run(circuit, backend="ibm_brisbane")
SpecificationValue
ProcessorEagle r3
Qubits127
TopologyHeavy-hex
T1 (avg)264 ΞΌs
T2 (avg)128 ΞΌs
CNOT Error0.8%
Readout Error1.2%

Best for: General-purpose production workloads, VQE, QAOA.

Pricing: $115.20/minute (QCOS Standard)


IBM Sherbrooke​

job = client.run(circuit, backend="ibm_sherbrooke")
SpecificationValue
ProcessorEagle r3
Qubits127
TopologyHeavy-hex
T1 (avg)280 ΞΌs
T2 (avg)135 ΞΌs
CNOT Error0.7%
Readout Error1.0%

Best for: High-fidelity experiments, research validation.

Pricing: $115.20/minute (QCOS Standard)


IBM Heron​

job = client.run(circuit, backend="ibm_heron")
SpecificationValue
ProcessorHeron
Qubits133
TopologyHeavy-hex
T1 (avg)300+ ΞΌs
T2 (avg)150+ ΞΌs
CZ Error0.3%
Readout Error0.8%

Best for: Latest technology, lowest error rates.

Pricing: $115.20/minute (QCOS Standard)

Note: IBM Heron uses native CZ gates instead of CNOT. QCOS optimization automatically transpiles circuits for best performance.


AWS Braket Backends​

IonQ Aria​

job = client.run(circuit, backend="ionq_aria")
SpecificationValue
TechnologyTrapped Ion
Qubits25 (algorithmic)
ConnectivityAll-to-all
1Q Gate Fidelity99.94%
2Q Gate Fidelity99.4%
Readout Fidelity99.3%

Best for: Circuits requiring high connectivity, quantum chemistry.

Pricing: $0.36/task + $0.036/shot

Example Cost: 1000 shots = $0.36 + $36.00 = $36.36


IonQ Forte​

job = client.run(circuit, backend="ionq_forte")
SpecificationValue
TechnologyTrapped Ion
Qubits36 (algorithmic)
ConnectivityAll-to-all
1Q Gate Fidelity99.97%
2Q Gate Fidelity99.5%

Best for: Complex algorithms, highest gate fidelity.

Pricing: $0.36/task + $0.096/shot


Rigetti Ankaa-3​

job = client.run(circuit, backend="rigetti_ankaa")
SpecificationValue
TechnologySuperconducting
Qubits84
ConnectivitySquare lattice
Median 1Q Fidelity99.5%
Median 2Q Fidelity95%

Best for: Fast turnaround, large-scale experiments.

Pricing: $0.36/task + $0.00108/shot

Example Cost: 10,000 shots = $0.36 + $10.80 = $11.16


IQM Garnet​

job = client.run(circuit, backend="iqm_garnet")
SpecificationValue
TechnologySuperconducting
Qubits20
LocationEurope (Finland)
ConnectivitySquare lattice

Best for: European data residency requirements, GDPR compliance.

Pricing: $0.36/task + $0.00174/shot


QuEra Aquila​

job = client.run(circuit, backend="quera_aquila")
SpecificationValue
TechnologyNeutral Atom
AtomsUp to 256
TypeAnalog quantum simulation

Best for: Optimization problems, quantum simulation, Ising models.

Pricing: $0.36/task + $0.012/shot

Note: QuEra Aquila operates in analog mode. QCOS provides a translation layer for digital circuits where applicable.


Azure Quantum Backends​

Quantinuum H1​

job = client.run(circuit, backend="quantinuum_h1")
SpecificationValue
TechnologyTrapped Ion
Qubits20
2Q Gate Fidelity99.8%
ConnectivityAll-to-all

Best for: Enterprise workloads, highest reliability.

Pricing: Azure credits + 20% QCOS fee


Quantinuum H2​

job = client.run(circuit, backend="quantinuum_h2")
SpecificationValue
TechnologyTrapped Ion
Qubits32
2Q Gate Fidelity99.8%
FeaturesError correction ready

Best for: Enterprise production, error-corrected circuits.

Pricing: Azure credits + 20% QCOS fee


HPC Simulators​

LUMI Simulator​

result = client.simulate(
circuit,
method="statevector",
noise_model="ibm_brisbane"
)
SpecificationValue
Max Qubits (statevector)40
Max Qubits (MPS)100+
GPU AccelerationYes (AMD MI250X)
LocationFinland (CSC)

Methods:

  • statevector - Exact simulation up to 40 qubits
  • density_matrix - Up to 25 qubits with noise
  • mps - Tensor network up to 100+ qubits (low entanglement)

Pricing: See Pricing


Choosing the Right Backend​

Decision Matrix​

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Which Backend Should I Use? β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β”‚
β”‚ High connectivity needed? β”‚
β”‚ YES β†’ IonQ Aria/Forte or Quantinuum β”‚
β”‚ NO ↓ β”‚
β”‚ β”‚
β”‚ Need many qubits (>50)? β”‚
β”‚ YES β†’ IBM Brisbane/Sherbrooke or Rigetti Ankaa β”‚
β”‚ NO ↓ β”‚
β”‚ β”‚
β”‚ Lowest error rates critical? β”‚
β”‚ YES β†’ IBM Heron or Quantinuum H2 β”‚
β”‚ NO ↓ β”‚
β”‚ β”‚
β”‚ Fast turnaround needed? β”‚
β”‚ YES β†’ Rigetti Ankaa (short queue) β”‚
β”‚ NO ↓ β”‚
β”‚ β”‚
β”‚ Cost-sensitive? β”‚
β”‚ YES β†’ Rigetti ($0.00108/shot) β”‚
β”‚ NO β†’ IBM Brisbane (best overall) β”‚
β”‚ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Cost Comparison (1000 shots)​

BackendCost
Rigetti Ankaa$1.44
IQM Garnet$2.10
QuEra Aquila$12.36
IonQ Aria$36.36
IonQ Forte$96.36

Backend Status​

Check backend availability:

# All backends
backends = client.backends()
for b in backends:
print(f"{b.id}: {b.status} (queue: {b.queue_length})")

# Specific backend
backend = client.backend("ibm_brisbane")
print(f"Status: {backend.status}")
print(f"Next maintenance: {backend.maintenance.next_scheduled}")

Status Values:

StatusDescription
onlineAvailable for jobs
busyOnline but high queue
maintenanceScheduled maintenance
offlineTemporarily unavailable
retiredPermanently unavailable

Backend-Specific Optimization​

QCOS automatically optimizes circuits for each backend:

# QCOS detects backend and applies appropriate optimization
job = client.run(circuit, backend="ibm_heron")

# Check what optimization was applied
print(f"Original depth: {job.metrics.original_depth}")
print(f"Optimized depth: {job.metrics.optimized_depth}")
print(f"Native gates: {job.metrics.native_gates}")

Backend Optimizations​

BackendNative GatesOptimizations
IBMCX, RZ, SX, XHeavy-hex mapping, dynamic decoupling
IBM HeronCZ, RZ, SXCZ-optimized transpilation
IonQAll-to-allGate fusion, native gate set
RigettiCZ, XYParametric compilation
QuantinuumZZZZ-based decomposition

Multi-Backend Workflows​

Execute the same circuit across multiple backends:

backends = ["ibm_brisbane", "ionq_aria", "rigetti_ankaa"]
jobs = []

for backend in backends:
job = client.run(circuit, backend=backend, shots=1000)
jobs.append(job)

# Collect results
for job in jobs:
result = job.result()
print(f"{job.backend}: {result.counts}")

Next Steps​