Site Tools


qiskit-backends

Backends

Backends are the execution targets for quantum circuits. A backend can be a classical simulator or a real quantum processor. Qiskit abstracts the details: you design once, then run on different backends without changing code.

Each backend has constraints: a gate set (which gates it natively supports), qubit connectivity (which pairs can interact), and error rates. Transpilation adapts your circuit to meet these constraints.

Backend Selection

Qiskit provides several built-in backends:

  • AerSimulator: fast classical simulator, supports arbitrary gate sets, perfect fidelity
  • QasmSimulator: OpenQASM 2.0 simulator
  • StatevectorSimulator: tracks the full quantum state (for small circuits)
  • IBM backends: real quantum processors via IBM Quantum Platform
from qiskit_aer import AerSimulator, QasmSimulator
from qiskit_ibm_runtime import QiskitRuntimeService
 
# Local simulators
sim = AerSimulator()
result = sim.run(qc, shots=1000).result()
 
# IBM Quantum hardware (requires account and token)
service = QiskitRuntimeService()
backend = service.backend('ibmq_qx5')
job = backend.run(qc, shots=1000)
result = job.result()

Backend Properties

Query a backend's properties: qubit count, gate times, error rates, connectivity:

backend = AerSimulator()
print(backend.num_qubits)
print(backend.configuration().basis_gates)

Different backends have different performance characteristics. Simulators are perfect but slow for large circuits; real hardware is noisy but available now.

qiskit-backends.md · Last modified: by 127.0.0.1