IBM Quantum simulators¶
Simulators overview¶
IBM Quantum features a collection of high-performance simulators
for prototyping quantum circuits and algorithms, and exploring their
performance under realistic device noise models.
The default choice of simulator should be the simulator_statevector as it is a general-purpose solution method.
The following simulation methods are currently available, and support a maximum of
300 circuits and 8192 shots per job:
simulator_statevector¶
- Simulator type
Schrödinger wavefunction
- Description
Simulates a quantum circuit by computing the wavefunction of the qubit’s statevector as gates and instructions are applied. Supports general noise modeling.
Qubits: 32
Supported gates / instructions
['u1', 'u2', 'u3', 'u', 'p', 'r', 'rx', 'ry', 'rz', 'id',
'x', 'y', 'z', 'h', 's', 'sdg', 'sx', 't', 'tdg', 'swap',
'cx', 'cy', 'cz', 'csx', 'cp', 'cu1', 'cu2', 'cu3', 'rxx',
'ryy', 'rzz', 'rzx', 'ccx', 'cswap', 'mcx', 'mcy', 'mcz',
'mcsx', 'mcp', 'mcu1', 'mcu2', 'mcu3', 'mcrx', 'mcry',
'mcrz', 'mcr', 'mcswap', 'unitary', 'diagonal',
'multiplexer', 'initialize', 'kraus', 'roerror', 'delay']
Noise modeling: Yes.
simulator_stabilizer¶
- Simulator type
Clifford simulator
- Description
An efficient simulator of Clifford circuits. Can simulate noisy evolution if the noise operators are also Clifford gates.
Qubits: 5000
Supported gates / instructions
['cx', 'cy', 'cz', 'id', 'x', 'y', 'z', 'h',
's', 'sdg', 'sx', 'swap', 'delay', 'roerror']
Noise modeling: Yes, Clifford only.
simulator_extended_stabilizer¶
- Simulator type
Extended Clifford (e.g., Clifford+T)
- Description
Approximates the action of a quantum circuit using a ranked-stabilizer decomposition. The number of non-Clifford gates determines the number of stabilizer terms.
Qubits: 63
Supported gates / instructions
['u0', 'u1', 'cx', 'cz', 'id', 'x', 'y', 'z', 'h',
't', 'tdg', 's', 'sdg', 'sx', 'swap', 'p', 'ccx', 'ccz',
'delay', 'roerror']
Noise modeling: No
simulator_mps¶
- Simulator type
Matrix Product State
- Description
A tensor-network simulator that uses a Matrix Product State (MPS) representation for the state that is often more efficient for states with weak entanglement.
Qubits: 100
Supported gates / instructions
['unitary', 't', 'tdg', 'id', 'cp', 'u1', 'u2', 'u3', 'u',
'cx', 'cz', 'x', 'y', 'z', 'h', 's', 'sdg', 'sx', 'swap',
'p', 'ccx', 'delay', 'roerror']
Noise modeling: No
ibmq_qasm_simulator¶
- Simulator type
General, context-aware.
- Description
A general-purpose simulator for simulating quantum circuits both ideally and subject to noise modeling. The simulation method is automatically selected based on the input circuits and parameters.
Qubits: 32
Supported gates / instructions
['u1', 'u2', 'u3', 'u', 'p', 'r', 'rx', 'ry', 'rz', 'id',
'x', 'y', 'z', 'h', 's', 'sdg', 'sx', 't', 'tdg', 'swap',
'cx', 'cy', 'cz', 'csx', 'cp', 'cu1', 'cu2', 'cu3', 'rxx',
'ryy', 'rzz', 'rzx', 'ccx', 'cswap', 'mcx', 'mcy', 'mcz',
'mcsx', 'mcp', 'mcu1', 'mcu2', 'mcu3', 'mcrx', 'mcry',
'mcrz', 'mcr', 'mcswap', 'unitary', 'diagonal',
'multiplexer', 'initialize', 'kraus', 'roerror', 'delay']
Noise modeling: Yes
Simulator timeout limit
To prevent the simulators from processing jobs that would otherwise not finish processing in a reasonable amount of time, jobs sent to the simulators are limited to run times under 10,000 seconds (~2.75 hours).