liveBook · Manning

Performance estimation

As explained in Quantum Programming in Depth

Performance estimation is the analysis of the time and computational resources required to execute an algorithm on a specified computational architecture.

Performance estimation analyzes the time and computational resources required to execute an algorithm on a specified architecture. For quantum programs, simulator run time is only a misleading first approximation: results vary with implementation language, simulator design, and allocated qubits. section 9.3

Compare quantum solutions by separating algorithmic behavior from execution-environment effects:

  • Full-state simulators are strongly influenced by the number of allocated qubits. section 9.3
  • Sparse simulators depend primarily on the number of basis states manipulated. section 9.3
  • Simulator timing does not directly predict quantum-computer timing, because classical simulators perform additional state-maintenance work. section 9.3
  • Physical-qubit noise, limited and slow gates, error correction, and logical-gate implementation affect run time and qubit requirements. section 9.3

N queens implementations

Two N queens solutions reverse their apparent ranking across simulators: Qiskit takes over two minutes for one hundred runs of the first algorithm and under a second for the second, while Q# takes 16 and 20 seconds respectively. section 9.3

Table 9.1 Simulation times for different solutions to the N queens puzzle
Algorithm Qiskit run time Q# run time
Section 8.2 137 sec 16 sec
Section 8.3 < 1 sec 20 sec

Use the timing table to compare the same N queens algorithms across Qiskit and Q# simulators. section 9.3

Figure 9.5 Physical qubits are noisy, they support a limited set of gates, and these gates are slow. We have to use error correction to enable reliable computation on noisy qubits. We also have to use a special process to implement arbitrary logical gates on logical qubits. These factors affect both the run time of algorithms on the quantum computers and the numbers of qubits required to run them.
figure

Use the hardware diagram to inspect how noisy physical qubits, error correction, and logical gates change resource estimates. section 9.3

How Quantum Programming in Depth covers it

How deep it goes
Explains simulator-dependent timing and hardware constraints, but stops short of a complete performance-estimation procedure.
Examples
Compares two N queens implementations using Qiskit and Q# simulator timings.
What it assumes
Assumes an implemented quantum algorithm and familiarity with simulators, programming languages, qubits, gates, and measurements.
What you can do after
Evaluate quantum implementations without treating simulator run time as a direct measure of quantum-computer performance.
How it connects
Connects quantum algorithms with quantum simulators, Qiskit, Q#, physical qubits, logical qubits, gates, measurements, and error correction.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Quantum Programming in Depth. The section links point to the parts of the book it draws on.