From 4f481f484c558b5de6f88484c5f8951b29000737 Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Thu, 16 Jan 2025 22:21:09 -0600 Subject: [PATCH 01/16] dev --- src/pyqasm/simulator/statevector.py | 88 +++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 src/pyqasm/simulator/statevector.py diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py new file mode 100644 index 00000000..4f0bac35 --- /dev/null +++ b/src/pyqasm/simulator/statevector.py @@ -0,0 +1,88 @@ +from typing import Optional + +import numpy as np +from openqasm3.ast import QuantumGate +from scipy import sparse + +from pyqasm.modules.base import QasmModule + +GATES: dict[str, np.ndarray] = { + "x": np.array([[0, 1], [1, 0]], dtype=complex), + "y": np.array([[0, -1j], [1j, 0]], dtype=complex), + "z": np.array([[1, 0], [0, -1]], dtype=complex), + "h": np.array([[1, 1], [1, -1]], dtype=complex) / np.sqrt(2), + "id": np.array([[1, 0], [0, 1]], dtype=complex), +} + + +class StatevectorSimulator: + def __init__(self, module: QasmModule): + self.module = module + self.num_qubits = module.num_qubits + self.reset_statevector() + + def reset_statevector(self): + self.statevector = sparse.csr_matrix((1, 2**self.num_qubits), dtype=complex) + self.statevector[0, 0] = 1.0 + + def apply_gate( + self, gate_name: str, target_qubit: int, control_qubits: Optional[list[int]] = None + ): + if gate_name not in GATES: + raise ValueError(f"Gate {gate_name} not supported") + gate = GATES[gate_name] + + if target_qubit < 0 or target_qubit >= self.num_qubits: + raise ValueError(f"Invalid target qubit: {target_qubit}") + + if control_qubits: + # Implement controlled gates here + pass + else: + full_operator = sparse.eye(2**self.num_qubits, dtype=complex) + full_operator = full_operator.tolil() + for i in range(2 ** (self.num_qubits - 1)): + i0 = i + (i >> target_qubit << (target_qubit + 1)) + i1 = i0 + (1 << target_qubit) + full_operator[i0, i0] = gate[0, 0] + full_operator[i0, i1] = gate[0, 1] + full_operator[i1, i0] = gate[1, 0] + full_operator[i1, i1] = gate[1, 1] + full_operator = full_operator.tocsr() + + self.statevector = self.statevector.dot(full_operator) + + def simulate(self) -> np.ndarray: + self.reset_statevector() + self.module.unroll() + + for statement in self.module._unrolled_ast.statements: + if isinstance(statement, QuantumGate): + try: + self.apply_gate( + statement.name.name, statement.qubits[0].indices[0][0].value + 1 + ) + except ValueError as e: + raise e + + return self.statevector.toarray()[0] + + def get_probabilities(self) -> np.ndarray: + return np.abs(self.statevector.toarray()[0]) ** 2 + + +from pyqasm import loads + +qasm = """ +OPENQASM 3; +include "stdgates.inc"; +qubit[2] q; +h q[0]; +""" + +program = loads(qasm) + +simulator = StatevectorSimulator(program) + +print(simulator.simulate()) # [1.+0.j 0.+0.j 0.+0.j 0.+0.j] +print(simulator.get_probabilities()) # [1. 0. 0. 0.] From 798d194a599a1b6556db90bb8e0437979c1b940b Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Thu, 16 Jan 2025 23:24:24 -0600 Subject: [PATCH 02/16] 1 & 2 qubit gate handling --- src/pyqasm/simulator/statevector.py | 86 ++++++++++++++++++++--------- 1 file changed, 60 insertions(+), 26 deletions(-) diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index 4f0bac35..03bbdeec 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -12,22 +12,25 @@ "z": np.array([[1, 0], [0, -1]], dtype=complex), "h": np.array([[1, 1], [1, -1]], dtype=complex) / np.sqrt(2), "id": np.array([[1, 0], [0, 1]], dtype=complex), + "cx": np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1], [0, 0, 1, 0]], dtype=complex), + "swap": np.array([[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, 1]], dtype=complex), } class StatevectorSimulator: def __init__(self, module: QasmModule): + module.unroll() + module.remove_idle_qubits() self.module = module self.num_qubits = module.num_qubits self.reset_statevector() def reset_statevector(self): - self.statevector = sparse.csr_matrix((1, 2**self.num_qubits), dtype=complex) + self.statevector = sparse.lil_matrix((1, 2**self.num_qubits), dtype=complex) self.statevector[0, 0] = 1.0 + self.statevector = self.statevector.tocsr() - def apply_gate( - self, gate_name: str, target_qubit: int, control_qubits: Optional[list[int]] = None - ): + def apply_gate(self, gate_name: str, target_qubit: int, control_qubit: Optional[int] = None): if gate_name not in GATES: raise ValueError(f"Gate {gate_name} not supported") gate = GATES[gate_name] @@ -35,35 +38,64 @@ def apply_gate( if target_qubit < 0 or target_qubit >= self.num_qubits: raise ValueError(f"Invalid target qubit: {target_qubit}") - if control_qubits: - # Implement controlled gates here - pass + full_operator = sparse.lil_matrix((2**self.num_qubits, 2**self.num_qubits), dtype=complex) + + if control_qubit is not None: + if control_qubit < 0 or control_qubit >= self.num_qubits: + raise ValueError(f"Invalid control qubit: {control_qubit}") + + # Handle two-qubit gates (CNOT and SWAP) + for i in range(2 ** (self.num_qubits - 2)): + i0 = i + ( + i >> min(control_qubit, target_qubit) << (min(control_qubit, target_qubit) + 1) + ) + i1 = i0 + (1 << min(control_qubit, target_qubit)) + i2 = i0 + (1 << max(control_qubit, target_qubit)) + i3 = i2 + (1 << min(control_qubit, target_qubit)) + + if gate_name == "cx": + full_operator[i0, i0] = gate[0, 0] + full_operator[i1, i1] = gate[1, 1] + full_operator[i2, i2] = gate[2, 2] + full_operator[i3, i3] = gate[3, 3] + if control_qubit < target_qubit: + full_operator[i2, i3] = gate[2, 3] + full_operator[i3, i2] = gate[3, 2] + else: + full_operator[i1, i3] = gate[1, 3] + full_operator[i3, i1] = gate[3, 1] + elif gate_name == "swap": + full_operator[i0, i0] = gate[0, 0] + full_operator[i1, i2] = gate[1, 2] + full_operator[i2, i1] = gate[2, 1] + full_operator[i3, i3] = gate[3, 3] else: - full_operator = sparse.eye(2**self.num_qubits, dtype=complex) - full_operator = full_operator.tolil() - for i in range(2 ** (self.num_qubits - 1)): - i0 = i + (i >> target_qubit << (target_qubit + 1)) - i1 = i0 + (1 << target_qubit) - full_operator[i0, i0] = gate[0, 0] - full_operator[i0, i1] = gate[0, 1] - full_operator[i1, i0] = gate[1, 0] - full_operator[i1, i1] = gate[1, 1] - full_operator = full_operator.tocsr() - - self.statevector = self.statevector.dot(full_operator) + # Single-qubit gate + for i in range(2**self.num_qubits): + if (i & (1 << target_qubit)) != 0: + i1 = i + i0 = i1 ^ (1 << target_qubit) + full_operator[i0, i0] = gate[0, 0] + full_operator[i0, i1] = gate[0, 1] + full_operator[i1, i0] = gate[1, 0] + full_operator[i1, i1] = gate[1, 1] + # Convert to CSR format for efficient multiplication + full_operator = full_operator.tocsr() + self.statevector = self.statevector.dot(full_operator) def simulate(self) -> np.ndarray: self.reset_statevector() - self.module.unroll() for statement in self.module._unrolled_ast.statements: if isinstance(statement, QuantumGate): - try: + if len(statement.qubits) == 1: + self.apply_gate(statement.name.name, statement.qubits[0].indices[0][0].value) + elif len(statement.qubits) == 2: self.apply_gate( - statement.name.name, statement.qubits[0].indices[0][0].value + 1 + statement.name.name, + statement.qubits[1].indices[0][0].value, + statement.qubits[0].indices[0][0].value, ) - except ValueError as e: - raise e return self.statevector.toarray()[0] @@ -78,11 +110,13 @@ def get_probabilities(self) -> np.ndarray: include "stdgates.inc"; qubit[2] q; h q[0]; +swap q[0], q[1]; +cx q[0], q[1]; """ program = loads(qasm) simulator = StatevectorSimulator(program) -print(simulator.simulate()) # [1.+0.j 0.+0.j 0.+0.j 0.+0.j] -print(simulator.get_probabilities()) # [1. 0. 0. 0.] +print(simulator.simulate()) +print(simulator.get_probabilities()) From 26832904f4349f94fa8c801d0637345ea81cce69 Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Fri, 7 Feb 2025 16:58:58 -0600 Subject: [PATCH 03/16] remove class attributes --- src/pyqasm/simulator/statevector.py | 74 +++++++++++++++++------------ 1 file changed, 44 insertions(+), 30 deletions(-) diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index 03bbdeec..98d5b08e 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -18,34 +18,35 @@ class StatevectorSimulator: - def __init__(self, module: QasmModule): - module.unroll() - module.remove_idle_qubits() - self.module = module - self.num_qubits = module.num_qubits - self.reset_statevector() - def reset_statevector(self): - self.statevector = sparse.lil_matrix((1, 2**self.num_qubits), dtype=complex) - self.statevector[0, 0] = 1.0 - self.statevector = self.statevector.tocsr() - - def apply_gate(self, gate_name: str, target_qubit: int, control_qubit: Optional[int] = None): + def _create_statevector(self, num_qubits: int) -> sparse.csr_matrix: + statevector = sparse.lil_matrix((1, 2**num_qubits), dtype=complex) + statevector[0, 0] = 1.0 + return statevector.tocsr() + + def _apply_gate( + self, + gate_name: str, + target_qubit: int, + control_qubit: Optional[int], + num_qubits: int, + statevector: sparse.csr_matrix, + ) -> sparse.csr_matrix: if gate_name not in GATES: raise ValueError(f"Gate {gate_name} not supported") gate = GATES[gate_name] - if target_qubit < 0 or target_qubit >= self.num_qubits: + if target_qubit < 0 or target_qubit >= num_qubits: raise ValueError(f"Invalid target qubit: {target_qubit}") - full_operator = sparse.lil_matrix((2**self.num_qubits, 2**self.num_qubits), dtype=complex) + full_operator = sparse.lil_matrix((2**num_qubits, 2**num_qubits), dtype=complex) if control_qubit is not None: - if control_qubit < 0 or control_qubit >= self.num_qubits: + if control_qubit < 0 or control_qubit >= num_qubits: raise ValueError(f"Invalid control qubit: {control_qubit}") # Handle two-qubit gates (CNOT and SWAP) - for i in range(2 ** (self.num_qubits - 2)): + for i in range(2 ** (num_qubits - 2)): i0 = i + ( i >> min(control_qubit, target_qubit) << (min(control_qubit, target_qubit) + 1) ) @@ -71,7 +72,7 @@ def apply_gate(self, gate_name: str, target_qubit: int, control_qubit: Optional[ full_operator[i3, i3] = gate[3, 3] else: # Single-qubit gate - for i in range(2**self.num_qubits): + for i in range(2**num_qubits): if (i & (1 << target_qubit)) != 0: i1 = i i0 = i1 ^ (1 << target_qubit) @@ -79,28 +80,38 @@ def apply_gate(self, gate_name: str, target_qubit: int, control_qubit: Optional[ full_operator[i0, i1] = gate[0, 1] full_operator[i1, i0] = gate[1, 0] full_operator[i1, i1] = gate[1, 1] + # Convert to CSR format for efficient multiplication full_operator = full_operator.tocsr() - self.statevector = self.statevector.dot(full_operator) + return statevector.dot(full_operator) + + def sample(self, module: QasmModule) -> np.ndarray: + module.unroll() + module.remove_idle_qubits() - def simulate(self) -> np.ndarray: - self.reset_statevector() + num_qubits = module.num_qubits + statevector = self._create_statevector(num_qubits) - for statement in self.module._unrolled_ast.statements: + for statement in module._unrolled_ast.statements: if isinstance(statement, QuantumGate): if len(statement.qubits) == 1: - self.apply_gate(statement.name.name, statement.qubits[0].indices[0][0].value) + statevector = self._apply_gate( + statement.name.name, + statement.qubits[0].indices[0][0].value, + None, + num_qubits, + statevector, + ) elif len(statement.qubits) == 2: - self.apply_gate( + statevector = self._apply_gate( statement.name.name, statement.qubits[1].indices[0][0].value, statement.qubits[0].indices[0][0].value, + num_qubits, + statevector, ) - return self.statevector.toarray()[0] - - def get_probabilities(self) -> np.ndarray: - return np.abs(self.statevector.toarray()[0]) ** 2 + return statevector.toarray()[0] from pyqasm import loads @@ -116,7 +127,10 @@ def get_probabilities(self) -> np.ndarray: program = loads(qasm) -simulator = StatevectorSimulator(program) +simulator = StatevectorSimulator() + +sv = simulator.sample(program) + +probs = np.abs(sv) ** 2 -print(simulator.simulate()) -print(simulator.get_probabilities()) +print(probs) From ea3b1ffee8b6a22e94d30cddec5eba6665899fe8 Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Fri, 7 Feb 2025 18:48:08 -0600 Subject: [PATCH 04/16] add result class --- src/pyqasm/simulator/statevector.py | 46 ++++++++++++++++++++++------- 1 file changed, 35 insertions(+), 11 deletions(-) diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index 98d5b08e..c6f3faf9 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -1,4 +1,4 @@ -from typing import Optional +from collections import Counter import numpy as np from openqasm3.ast import QuantumGate @@ -17,7 +17,23 @@ } -class StatevectorSimulator: +class Result: + + def __init__(self, sv: np.ndarray, counts: Counter[str] | None): + self.sv = sv + self.counts = counts + + def probabilities(self) -> np.ndarray: + return np.abs(self.sv) ** 2 + + def get_counts(self) -> Counter: + return self.counts or Counter() + + +class Simulator: + + def __init__(self, seed: int | None = None): + self._rng = np.random.default_rng(seed) def _create_statevector(self, num_qubits: int) -> sparse.csr_matrix: statevector = sparse.lil_matrix((1, 2**num_qubits), dtype=complex) @@ -28,7 +44,7 @@ def _apply_gate( self, gate_name: str, target_qubit: int, - control_qubit: Optional[int], + control_qubit: int | None, num_qubits: int, statevector: sparse.csr_matrix, ) -> sparse.csr_matrix: @@ -85,7 +101,7 @@ def _apply_gate( full_operator = full_operator.tocsr() return statevector.dot(full_operator) - def sample(self, module: QasmModule) -> np.ndarray: + def run(self, module: QasmModule, shots: int | None = None) -> Result: module.unroll() module.remove_idle_qubits() @@ -111,7 +127,18 @@ def sample(self, module: QasmModule) -> np.ndarray: statevector, ) - return statevector.toarray()[0] + sv = statevector.toarray()[0] + + counts = None + if shots is not None: + if shots > 0: + probabilities = np.abs(sv) ** 2 + samples = self._rng.choice(len(probabilities), size=shots, p=probabilities) + counts = Counter(format(s, f"0{num_qubits}b") for s in samples) + elif shots < 0: + raise ValueError("Shots must be non-negative") + + return Result(statevector, counts) from pyqasm import loads @@ -121,16 +148,13 @@ def sample(self, module: QasmModule) -> np.ndarray: include "stdgates.inc"; qubit[2] q; h q[0]; -swap q[0], q[1]; cx q[0], q[1]; """ program = loads(qasm) -simulator = StatevectorSimulator() - -sv = simulator.sample(program) +simulator = Simulator() -probs = np.abs(sv) ** 2 +result = simulator.run(program, shots=1000) -print(probs) +print(result.get_counts()) From 13e76aebc5d07676d22579d21223cc51332da0ed Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Sat, 8 Feb 2025 10:59:21 -0600 Subject: [PATCH 05/16] check-in --- src/pyqasm/simulator/statevector.py | 129 +++++++++++++++++++++------- 1 file changed, 99 insertions(+), 30 deletions(-) diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index c6f3faf9..e86a3efe 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -1,33 +1,90 @@ from collections import Counter - import numpy as np from openqasm3.ast import QuantumGate from scipy import sparse from pyqasm.modules.base import QasmModule -GATES: dict[str, np.ndarray] = { + +def rz(theta: float) -> np.ndarray: + """Parameterized Rz gate.""" + return np.array([[np.exp(-1j * theta / 2), 0], + [0, np.exp(1j * theta / 2)]], dtype=complex) + +def ry(theta: float) -> np.ndarray: + """Parameterized Ry gate.""" + return np.array([ + [np.cos(theta / 2), -np.sin(theta / 2)], + [np.sin(theta / 2), np.cos(theta / 2)] + ], dtype=complex) + +def rx(theta: float) -> np.ndarray: + """Parameterized Rx gate.""" + return np.array([ + [np.cos(theta / 2), -1j * np.sin(theta / 2)], + [-1j * np.sin(theta / 2), np.cos(theta / 2)] + ], dtype=complex) + + +def crz(theta): + return np.array([ + [1, 0, 0, 0], + [0, 1, 0, 0], + [0, 0, np.exp(-1j * theta / 2), 0], + [0, 0, 0, np.exp(1j * theta / 2)] + ], dtype=complex) + + +def u(theta: float, phi: float, lam: float) -> np.ndarray: + """Parameterized U gate (generic single-qubit rotation).""" + return np.array([ + [np.cos(theta / 2), -np.exp(1j * lam) * np.sin(theta / 2)], + [np.exp(1j * phi) * np.sin(theta / 2), np.exp(1j * (phi + lam)) * np.cos(theta / 2)] + ], dtype=complex) + + +PARAMETERIZED_GATES = { + "rz": rz, + "ry": ry, + "rx": rx, + "crz": crz, + "u": u, + "u3": u, +} + +NON_PARAMETERIZED_GATES: dict[str, np.ndarray] = { "x": np.array([[0, 1], [1, 0]], dtype=complex), "y": np.array([[0, -1j], [1j, 0]], dtype=complex), "z": np.array([[1, 0], [0, -1]], dtype=complex), "h": np.array([[1, 1], [1, -1]], dtype=complex) / np.sqrt(2), "id": np.array([[1, 0], [0, 1]], dtype=complex), "cx": np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1], [0, 0, 1, 0]], dtype=complex), + "cy": np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, -1j], [0, 0, 1j, 0]], dtype=complex), + "cz": np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, -1]], dtype=complex), "swap": np.array([[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, 1]], dtype=complex), -} + "s": np.array([[1, 0], [0, 1j]], dtype=complex), + "t": np.array([[1, 0], [0, np.exp(1j * np.pi / 4)]], dtype=complex), + "sdg": np.array([[1, 0], [0, -1j]], dtype=complex), + "tdg": np.array([[1, 0], [0, np.exp(-1j * np.pi / 4)]], dtype=complex), +} class Result: - def __init__(self, sv: np.ndarray, counts: Counter[str] | None): - self.sv = sv - self.counts = counts + def __init__(self, statevector: np.ndarray, counts: Counter[str, int] | None = None): + self._statevector = statevector + self._counts = counts or Counter() - def probabilities(self) -> np.ndarray: - return np.abs(self.sv) ** 2 + @property + def statevector(self) -> np.ndarray: + return self._statevector + + @property + def measurement_counts(self) -> Counter: + return self._counts - def get_counts(self) -> Counter: - return self.counts or Counter() + def probabilities(self) -> np.ndarray: + return np.abs(self.statevector) ** 2 class Simulator: @@ -46,11 +103,18 @@ def _apply_gate( target_qubit: int, control_qubit: int | None, num_qubits: int, + params: list[float | int] | None, statevector: sparse.csr_matrix, ) -> sparse.csr_matrix: - if gate_name not in GATES: + if gate_name in PARAMETERIZED_GATES: + required_params = PARAMETERIZED_GATES[gate_name].__code__.co_argcount + if not params or len(params) != required_params: + raise ValueError(f"Gate {gate_name} requires {required_params} parameter(s).") + gate = PARAMETERIZED_GATES[gate_name](*params) + elif gate_name in NON_PARAMETERIZED_GATES: + gate = NON_PARAMETERIZED_GATES[gate_name] + else: raise ValueError(f"Gate {gate_name} not supported") - gate = GATES[gate_name] if target_qubit < 0 or target_qubit >= num_qubits: raise ValueError(f"Invalid target qubit: {target_qubit}") @@ -101,21 +165,26 @@ def _apply_gate( full_operator = full_operator.tocsr() return statevector.dot(full_operator) - def run(self, module: QasmModule, shots: int | None = None) -> Result: - module.unroll() - module.remove_idle_qubits() + def run(self, program: QasmModule | str, shots: int = 1) -> Result: + if isinstance(program, str): + program = loads(program) + + program.unroll() + program.remove_idle_qubits() - num_qubits = module.num_qubits + num_qubits = program.num_qubits statevector = self._create_statevector(num_qubits) - for statement in module._unrolled_ast.statements: + for statement in program._unrolled_ast.statements: if isinstance(statement, QuantumGate): + params = [arg.value for arg in statement.arguments if hasattr(arg, "value")] if len(statement.qubits) == 1: statevector = self._apply_gate( statement.name.name, statement.qubits[0].indices[0][0].value, None, num_qubits, + params, statevector, ) elif len(statement.qubits) == 2: @@ -124,23 +193,23 @@ def run(self, module: QasmModule, shots: int | None = None) -> Result: statement.qubits[1].indices[0][0].value, statement.qubits[0].indices[0][0].value, num_qubits, + params, statevector, ) sv = statevector.toarray()[0] - - counts = None - if shots is not None: - if shots > 0: - probabilities = np.abs(sv) ** 2 - samples = self._rng.choice(len(probabilities), size=shots, p=probabilities) - counts = Counter(format(s, f"0{num_qubits}b") for s in samples) - elif shots < 0: - raise ValueError("Shots must be non-negative") + + if shots < 0: + raise ValueError("Shots must be greater than or equal to 0.") + + probabilities = np.abs(sv) ** 2 + samples = self._rng.choice(len(probabilities), size=shots, p=probabilities) + counts = Counter(format(s, f"0{num_qubits}b") for s in samples) return Result(statevector, counts) + from pyqasm import loads qasm = """ @@ -151,10 +220,10 @@ def run(self, module: QasmModule, shots: int | None = None) -> Result: cx q[0], q[1]; """ -program = loads(qasm) - simulator = Simulator() -result = simulator.run(program, shots=1000) +result = simulator.run(qasm, shots=1000) + +print(result.measurement_counts) -print(result.get_counts()) +print(result.probabilities()) From 1135970742226302cb7b74c11a1e0172a6ce8e46 Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Sat, 8 Feb 2025 11:40:15 -0600 Subject: [PATCH 06/16] check-in updates2 --- src/pyqasm/simulator/braket-sv.py | 32 ++++++++++++ src/pyqasm/simulator/statevector.py | 76 ++++++++++++++++------------- 2 files changed, 74 insertions(+), 34 deletions(-) create mode 100644 src/pyqasm/simulator/braket-sv.py diff --git a/src/pyqasm/simulator/braket-sv.py b/src/pyqasm/simulator/braket-sv.py new file mode 100644 index 00000000..49d6a9de --- /dev/null +++ b/src/pyqasm/simulator/braket-sv.py @@ -0,0 +1,32 @@ +from braket.circuits import Circuit +from braket.devices import LocalSimulator + +circuit = Circuit().h(0).cnot(0, 1) + +device = LocalSimulator() +task = device.run(circuit, shots=0) +result = task.result() + +print(result.measurement_counts) + +# import cirq + +# # Create two qubits +# q0, q1 = cirq.LineQubit.range(2) + +# # Create a circuit +# circuit = cirq.Circuit( +# cirq.H(q0), # Hadamard gate on q0 +# cirq.CNOT(q0, q1), # CNOT gate with q0 as control and q1 as target +# cirq.measure(q0, q1, key='result') # Measure both qubits +# ) + + +# # Create a simulator +# simulator = cirq.Simulator(seed=2) + +# # Run the circuit and get results +# result = simulator.run(circuit, repetitions=0) + +# # Print the measurement results +# print(result.histogram(key='result')) diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index e86a3efe..cc5b41df 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -1,4 +1,5 @@ from collections import Counter + import numpy as np from openqasm3.ast import QuantumGate from scipy import sparse @@ -8,39 +9,49 @@ def rz(theta: float) -> np.ndarray: """Parameterized Rz gate.""" - return np.array([[np.exp(-1j * theta / 2), 0], - [0, np.exp(1j * theta / 2)]], dtype=complex) + return np.array([[np.exp(-1j * theta / 2), 0], [0, np.exp(1j * theta / 2)]], dtype=complex) + def ry(theta: float) -> np.ndarray: """Parameterized Ry gate.""" - return np.array([ - [np.cos(theta / 2), -np.sin(theta / 2)], - [np.sin(theta / 2), np.cos(theta / 2)] - ], dtype=complex) + return np.array( + [[np.cos(theta / 2), -np.sin(theta / 2)], [np.sin(theta / 2), np.cos(theta / 2)]], + dtype=complex, + ) + def rx(theta: float) -> np.ndarray: """Parameterized Rx gate.""" - return np.array([ - [np.cos(theta / 2), -1j * np.sin(theta / 2)], - [-1j * np.sin(theta / 2), np.cos(theta / 2)] - ], dtype=complex) + return np.array( + [ + [np.cos(theta / 2), -1j * np.sin(theta / 2)], + [-1j * np.sin(theta / 2), np.cos(theta / 2)], + ], + dtype=complex, + ) def crz(theta): - return np.array([ - [1, 0, 0, 0], - [0, 1, 0, 0], - [0, 0, np.exp(-1j * theta / 2), 0], - [0, 0, 0, np.exp(1j * theta / 2)] - ], dtype=complex) + return np.array( + [ + [1, 0, 0, 0], + [0, 1, 0, 0], + [0, 0, np.exp(-1j * theta / 2), 0], + [0, 0, 0, np.exp(1j * theta / 2)], + ], + dtype=complex, + ) def u(theta: float, phi: float, lam: float) -> np.ndarray: """Parameterized U gate (generic single-qubit rotation).""" - return np.array([ - [np.cos(theta / 2), -np.exp(1j * lam) * np.sin(theta / 2)], - [np.exp(1j * phi) * np.sin(theta / 2), np.exp(1j * (phi + lam)) * np.cos(theta / 2)] - ], dtype=complex) + return np.array( + [ + [np.cos(theta / 2), -np.exp(1j * lam) * np.sin(theta / 2)], + [np.exp(1j * phi) * np.sin(theta / 2), np.exp(1j * (phi + lam)) * np.cos(theta / 2)], + ], + dtype=complex, + ) PARAMETERIZED_GATES = { @@ -66,26 +77,23 @@ def u(theta: float, phi: float, lam: float) -> np.ndarray: "t": np.array([[1, 0], [0, np.exp(1j * np.pi / 4)]], dtype=complex), "sdg": np.array([[1, 0], [0, -1j]], dtype=complex), "tdg": np.array([[1, 0], [0, np.exp(-1j * np.pi / 4)]], dtype=complex), -} +} class Result: - def __init__(self, statevector: np.ndarray, counts: Counter[str, int] | None = None): - self._statevector = statevector + def __init__(self, probabilities: np.ndarray, counts: Counter[str, int] | None = None): + self._probabilities = probabilities self._counts = counts or Counter() @property - def statevector(self) -> np.ndarray: - return self._statevector - + def probabilities(self) -> np.ndarray: + return self._probabilities + @property def measurement_counts(self) -> Counter: return self._counts - def probabilities(self) -> np.ndarray: - return np.abs(self.statevector) ** 2 - class Simulator: @@ -198,16 +206,15 @@ def run(self, program: QasmModule | str, shots: int = 1) -> Result: ) sv = statevector.toarray()[0] - + if shots < 0: raise ValueError("Shots must be greater than or equal to 0.") - + probabilities = np.abs(sv) ** 2 samples = self._rng.choice(len(probabilities), size=shots, p=probabilities) counts = Counter(format(s, f"0{num_qubits}b") for s in samples) - return Result(statevector, counts) - + return Result(probabilities, counts) from pyqasm import loads @@ -226,4 +233,5 @@ def run(self, program: QasmModule | str, shots: int = 1) -> Result: print(result.measurement_counts) -print(result.probabilities()) + +print(result.probabilities) From a2747857dd4d93461a78941122aaa8a6f32b3d27 Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Sat, 8 Feb 2025 16:09:13 -0600 Subject: [PATCH 07/16] add test cases --- src/pyqasm/simulator/__init__.py | 29 ++++ src/pyqasm/simulator/braket-sv.py | 32 ---- src/pyqasm/simulator/statevector.py | 148 ++++++++-------- tests/test_sv_sim.py | 255 ++++++++++++++++++++++++++++ 4 files changed, 365 insertions(+), 99 deletions(-) create mode 100644 src/pyqasm/simulator/__init__.py delete mode 100644 src/pyqasm/simulator/braket-sv.py create mode 100644 tests/test_sv_sim.py diff --git a/src/pyqasm/simulator/__init__.py b/src/pyqasm/simulator/__init__.py new file mode 100644 index 00000000..2686e9c1 --- /dev/null +++ b/src/pyqasm/simulator/__init__.py @@ -0,0 +1,29 @@ +# Copyright (C) 2025 qBraid +# +# This file is part of PyQASM +# +# PyQASM is free software released under the GNU General Public License v3 +# or later. You can redistribute and/or modify it under the terms of the GPL v3. +# See the LICENSE file in the project root or . +# +# THERE IS NO WARRANTY for PyQASM, as per Section 15 of the GPL v3. + +""" +Module containing the PyQASM statevector simulator. + +.. currentmodule:: pyqasm.simulator + +Classes +--------- + +.. autosummary:: + :toctree: ../stubs/ + + Simulator + SimulatorResult + +""" + +from .statevector import Simulator, SimulatorResult + +__all__ = ["Simulator", "SimulatorResult"] diff --git a/src/pyqasm/simulator/braket-sv.py b/src/pyqasm/simulator/braket-sv.py deleted file mode 100644 index 49d6a9de..00000000 --- a/src/pyqasm/simulator/braket-sv.py +++ /dev/null @@ -1,32 +0,0 @@ -from braket.circuits import Circuit -from braket.devices import LocalSimulator - -circuit = Circuit().h(0).cnot(0, 1) - -device = LocalSimulator() -task = device.run(circuit, shots=0) -result = task.result() - -print(result.measurement_counts) - -# import cirq - -# # Create two qubits -# q0, q1 = cirq.LineQubit.range(2) - -# # Create a circuit -# circuit = cirq.Circuit( -# cirq.H(q0), # Hadamard gate on q0 -# cirq.CNOT(q0, q1), # CNOT gate with q0 as control and q1 as target -# cirq.measure(q0, q1, key='result') # Measure both qubits -# ) - - -# # Create a simulator -# simulator = cirq.Simulator(seed=2) - -# # Run the circuit and get results -# result = simulator.run(circuit, repetitions=0) - -# # Print the measurement results -# print(result.histogram(key='result')) diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index cc5b41df..7a763d14 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -1,9 +1,26 @@ +# Copyright (C) 2025 qBraid +# +# This file is part of PyQASM +# +# PyQASM is free software released under the GNU General Public License v3 +# or later. You can redistribute and/or modify it under the terms of the GPL v3. +# See the LICENSE file in the project root or . +# +# THERE IS NO WARRANTY for PyQASM, as per Section 15 of the GPL v3. + +""" +Statevector simulator for PyQASM. + +""" + from collections import Counter import numpy as np from openqasm3.ast import QuantumGate from scipy import sparse +from dataclasses import dataclass, field +from pyqasm import loads from pyqasm.modules.base import QasmModule @@ -31,7 +48,8 @@ def rx(theta: float) -> np.ndarray: ) -def crz(theta): +def crz(theta: float) -> np.ndarray: + """Parameterized Controlled-Rz gate.""" return np.array( [ [1, 0, 0, 0], @@ -43,8 +61,8 @@ def crz(theta): ) -def u(theta: float, phi: float, lam: float) -> np.ndarray: - """Parameterized U gate (generic single-qubit rotation).""" +def u3(theta: float, phi: float, lam: float) -> np.ndarray: + """Parameterized U3 gate (generic single-qubit rotation).""" return np.array( [ [np.cos(theta / 2), -np.exp(1j * lam) * np.sin(theta / 2)], @@ -59,8 +77,7 @@ def u(theta: float, phi: float, lam: float) -> np.ndarray: "ry": ry, "rx": rx, "crz": crz, - "u": u, - "u3": u, + "u3": u3, } NON_PARAMETERIZED_GATES: dict[str, np.ndarray] = { @@ -79,25 +96,29 @@ def u(theta: float, phi: float, lam: float) -> np.ndarray: "tdg": np.array([[1, 0], [0, np.exp(-1j * np.pi / 4)]], dtype=complex), } +@dataclass(frozen=True) +class SimulatorResult: + """Class to store the result of a statevector simulation.""" + probabilities: np.ndarray + measurement_counts: Counter[str, int] + final_statevector: np.ndarray -class Result: - - def __init__(self, probabilities: np.ndarray, counts: Counter[str, int] | None = None): - self._probabilities = probabilities - self._counts = counts or Counter() - @property - def probabilities(self) -> np.ndarray: - return self._probabilities - - @property - def measurement_counts(self) -> Counter: - return self._counts +class Simulator: + """ + Statevector simulator + """ -class Simulator: + def __init__(self, seed: None | int = None): + """ + Initialize the statevector simulator. - def __init__(self, seed: int | None = None): + Parameters: + seed (None | int): A seed to initialize the `np.random.BitGenerator`. + If None, then fresh, unpredictable entropy will be pulled from + the OS using `np.random.SeedSequence`. + """ self._rng = np.random.default_rng(seed) def _create_statevector(self, num_qubits: int) -> sparse.csr_matrix: @@ -130,38 +151,38 @@ def _apply_gate( full_operator = sparse.lil_matrix((2**num_qubits, 2**num_qubits), dtype=complex) if control_qubit is not None: + # Two-qubit gate if control_qubit < 0 or control_qubit >= num_qubits: raise ValueError(f"Invalid control qubit: {control_qubit}") - # Handle two-qubit gates (CNOT and SWAP) - for i in range(2 ** (num_qubits - 2)): - i0 = i + ( - i >> min(control_qubit, target_qubit) << (min(control_qubit, target_qubit) + 1) - ) - i1 = i0 + (1 << min(control_qubit, target_qubit)) - i2 = i0 + (1 << max(control_qubit, target_qubit)) - i3 = i2 + (1 << min(control_qubit, target_qubit)) - - if gate_name == "cx": - full_operator[i0, i0] = gate[0, 0] - full_operator[i1, i1] = gate[1, 1] - full_operator[i2, i2] = gate[2, 2] - full_operator[i3, i3] = gate[3, 3] - if control_qubit < target_qubit: - full_operator[i2, i3] = gate[2, 3] - full_operator[i3, i2] = gate[3, 2] + if gate_name == "swap": + control, target = sorted((control_qubit, target_qubit)) # Ensure correct order + for i in range(2**num_qubits): + if (i >> control) & 1: # If control qubit is |1> + j = i ^ (1 << target) # Flip the target qubit + full_operator[i, j] = 1.0 # Apply CX gate else: - full_operator[i1, i3] = gate[1, 3] - full_operator[i3, i1] = gate[3, 1] - elif gate_name == "swap": - full_operator[i0, i0] = gate[0, 0] - full_operator[i1, i2] = gate[1, 2] - full_operator[i2, i1] = gate[2, 1] - full_operator[i3, i3] = gate[3, 3] + full_operator[i, i] = 1.0 # Apply Identity + else: + for i in range(2**num_qubits): + if (i >> control_qubit) & 1: + # If the control qubit is |1>, flip the target qubit + j = i ^ (1 << target_qubit) # XOR to flip the target qubit + full_operator[i, j] = 1.0 # Apply CX gate + else: + full_operator[i, i] = 1.0 # Apply Identity else: # Single-qubit gate for i in range(2**num_qubits): - if (i & (1 << target_qubit)) != 0: + if gate_name == "ry": + if (i & (1 << target_qubit)) == 0: + i1 = i + i0 = i1 ^ (1 << target_qubit) + full_operator[i0, i0] = gate[0, 0] + full_operator[i0, i1] = gate[0, 1] + full_operator[i1, i0] = gate[1, 0] + full_operator[i1, i1] = gate[1, 1] + elif (i & (1 << target_qubit)) != 0: i1 = i i0 = i1 ^ (1 << target_qubit) full_operator[i0, i0] = gate[0, 0] @@ -173,7 +194,20 @@ def _apply_gate( full_operator = full_operator.tocsr() return statevector.dot(full_operator) - def run(self, program: QasmModule | str, shots: int = 1) -> Result: + def run(self, program: QasmModule | str, shots: int = 1) -> SimulatorResult: + """Run the statevector simulator. + + Args: + program (QasmModule | str): The program to simulate. + shots (int): The number of shots to simulate. Defaults to 1. + + Returns: + SimulatorResult: The result of the simulation. + + Raises: + ValueError: If shots is less than 0, or if the program contains + an unsupported gate or invalid syntax. + """ if isinstance(program, str): program = loads(program) @@ -212,26 +246,6 @@ def run(self, program: QasmModule | str, shots: int = 1) -> Result: probabilities = np.abs(sv) ** 2 samples = self._rng.choice(len(probabilities), size=shots, p=probabilities) - counts = Counter(format(s, f"0{num_qubits}b") for s in samples) - - return Result(probabilities, counts) - - -from pyqasm import loads - -qasm = """ -OPENQASM 3; -include "stdgates.inc"; -qubit[2] q; -h q[0]; -cx q[0], q[1]; -""" - -simulator = Simulator() - -result = simulator.run(qasm, shots=1000) - -print(result.measurement_counts) - + counts = Counter(format(s, f"0{num_qubits}b")[::-1] for s in samples) -print(result.probabilities) + return SimulatorResult(probabilities, counts, sv) diff --git a/tests/test_sv_sim.py b/tests/test_sv_sim.py new file mode 100644 index 00000000..65866cb8 --- /dev/null +++ b/tests/test_sv_sim.py @@ -0,0 +1,255 @@ +# Copyright (C) 2025 qBraid +# +# This file is part of PyQASM +# +# PyQASM is free software released under the GNU General Public License v3 +# or later. You can redistribute and/or modify it under the terms of the GPL v3. +# See the LICENSE file in the project root or . +# +# THERE IS NO WARRANTY for PyQASM, as per Section 15 of the GPL v3. + +# pylint: disable=redefined-outer-name + +""" +Module containing tests for the PyQASM statevector simulator. + +""" + +import numpy as np +import pytest +from qiskit import transpile +from qiskit.qasm3 import loads +from qiskit_aer import AerSimulator + +from pyqasm.simulator.statevector import Simulator + + +@pytest.fixture +def aer_simulator(): + """Fixture to create and return a Qiskit AerSimulator.""" + return AerSimulator(method="statevector") + + +@pytest.fixture +def pyqasm_simulator(): + """Fixture to create and return a pyqasm simulator.""" + return Simulator(seed=22) + + +@pytest.mark.parametrize( + "qasm, description", + [ + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + h q[0]; + """, + "Hadamard gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + rx(pi) q[0]; + """, + "RX(pi) gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + ry(pi) q[0]; + """, + "RY(pi) gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + rz(pi) q[0]; + """, + "RZ(pi) gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + s q[0]; + """, + "S gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + t q[0]; + """, + "T gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + sdg q[0]; + """, + "Sdg gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + tdg q[0]; + """, + "Tdg gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + id q[0]; + """, + "Identity gate", + ), + # ( + # """ + # OPENQASM 3; + # include "stdgates.inc"; + # qubit[1] q; + # u3(0,0,0) q[0]; + # """, + # "U3 gate", + # ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + h q[0]; + rx(pi) q[0]; + ry(pi) q[0]; + rz(pi) q[0]; + s q[0]; + t q[0]; + sdg q[0]; + tdg q[0]; + id q[0]; + """, + "Combined gates: H, RX(pi), RY(pi), RZ(pi), S, T, Sdg, Tdg, ID", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + cx q[0], q[1]; + """, + "CX gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + cy q[0], q[1]; + """, + "CY gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + cz q[0], q[1]; + """, + "CZ gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + swap q[0], q[1]; + """, + "Swap gate", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + h q[0]; + h q[1]; + """, + "Two H Gates", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + h q[0]; + cx q[0], q[1]; + """, + "Bell state", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[3] q; + h q[0]; + cx q[0], q[1]; + cx q[1], q[2]; + """, + "GHZ state", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + h q[0]; + swap q[0], q[1]; + cx q[0], q[1]; + """, + "Bell state with swap", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + h q[0]; + swap q[1], q[0]; + cx q[0], q[1]; + """, + "Bell state with swap rev qubits", + ), + ], +) +def test_simulator_sv_results(qasm, description, aer_simulator, pyqasm_simulator): + """Test PyQASM simulator by comparing SV results against the Qiskit Aer simulator.""" + circuit = loads(qasm) + circuit.save_statevector() + compiled_circuit = transpile(circuit, aer_simulator) + result = aer_simulator.run(compiled_circuit).result() + sv_qiskit = result.get_statevector(compiled_circuit) + sv_expected = np.asarray(sv_qiskit) + + result = pyqasm_simulator.run(qasm, shots=1000) + + assert np.allclose(result.final_statevector, sv_expected), ( + f"Test failed for: {description}\n" + f"PyQASM simulator statevector: {result.final_statevector}\n" + f"Expected statevector: {sv_expected}" + ) From 5881c97b1aa20ae4fe6796a35845e1c8c6743cfa Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Sat, 8 Feb 2025 17:21:11 -0600 Subject: [PATCH 08/16] get swap gate a little closer - still not right tho --- src/pyqasm/simulator/statevector.py | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index 7a763d14..3d95f46f 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -14,11 +14,11 @@ """ from collections import Counter +from dataclasses import dataclass, field import numpy as np from openqasm3.ast import QuantumGate from scipy import sparse -from dataclasses import dataclass, field from pyqasm import loads from pyqasm.modules.base import QasmModule @@ -96,9 +96,11 @@ def u3(theta: float, phi: float, lam: float) -> np.ndarray: "tdg": np.array([[1, 0], [0, np.exp(-1j * np.pi / 4)]], dtype=complex), } + @dataclass(frozen=True) class SimulatorResult: """Class to store the result of a statevector simulation.""" + probabilities: np.ndarray measurement_counts: Counter[str, int] final_statevector: np.ndarray @@ -155,16 +157,18 @@ def _apply_gate( if control_qubit < 0 or control_qubit >= num_qubits: raise ValueError(f"Invalid control qubit: {control_qubit}") - if gate_name == "swap": - control, target = sorted((control_qubit, target_qubit)) # Ensure correct order - for i in range(2**num_qubits): - if (i >> control) & 1: # If control qubit is |1> - j = i ^ (1 << target) # Flip the target qubit - full_operator[i, j] = 1.0 # Apply CX gate + for i in range(2**num_qubits): + if gate_name == "swap": + control, target = sorted((control_qubit, target_qubit)) + bit_c = (i >> control) & 1 + bit_t = (i >> target) & 1 + if bit_c != bit_t: # If control and target don't match + j = i ^ (1 << target) + # j = i ^ ((1 << control) | (1 << target)) # Flip both bits to swap states + full_operator[i, j] = 1.0 # Set off-diagonal element else: - full_operator[i, i] = 1.0 # Apply Identity - else: - for i in range(2**num_qubits): + full_operator[i, i] = 1.0 # Set diagonal element + else: if (i >> control_qubit) & 1: # If the control qubit is |1>, flip the target qubit j = i ^ (1 << target_qubit) # XOR to flip the target qubit From e71fe3d3f9edb8a5fc1939751a59e2e8484675a3 Mon Sep 17 00:00:00 2001 From: Ryan Hill Date: Fri, 6 Mar 2026 23:56:31 -0600 Subject: [PATCH 09/16] Optimize statevector simulator: gate fusion, native gate preprocessing, OpenMP support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Key changes: - Remove unroll() from Simulator.run() for QasmModule input (caller responsibility) - Single-pass _preprocess() with inline gate fusion (replaces separate _fuse_gates pass) - Native gate handling in _preprocess() without requiring full AST unrolling - AST expression evaluator for raw QASM parameter expressions (pi, tau, arithmetic) - Cache unroll() results in QasmModule (skip if already unrolled) - New Cython apply_circuit() entry point with 5 specialized kernels - Optional OpenMP parallelism via PYQASM_NUM_THREADS env var (default=1/serial) - OpenMP build detection in setup.py (macOS Homebrew libomp + Linux) - Benchmark suite comparing PyQASM vs Qiskit Aer, Cirq, PennyLane Lightning - Performance regression tests with pytest benchmark marker - Profiling script for detailed per-phase timing breakdown Performance (serial, median of 5): - Random circuits: PyQASM fastest at all sizes (4-22q), beating Qiskit/Cirq/Lightning - QFT circuits: PyQASM fastest at ≤12q; kernel-bound at ≥16q (memory bandwidth limited) - With PYQASM_NUM_THREADS=8: 4.1x speedup at 22q, 2.7x at 20q Known limitation: macOS libomp conflicts with Qiskit Aer's OpenMP in same process, so parallelism is opt-in. Future work: SIMD/AVX kernels for single-threaded perf. Co-Authored-By: Claude Opus 4.6 --- .gitignore | 1 + benchmarks/bench_qft.png | Bin 0 -> 132089 bytes benchmarks/bench_random.png | Bin 0 -> 139227 bytes benchmarks/bench_simulator.py | 406 +++++++++++++++++++++++++++ benchmarks/plot_benchmarks.py | 160 +++++++++++ benchmarks/profile_simulator.py | 231 ++++++++++++++++ pyproject.toml | 6 +- setup.py | 84 ++++++ src/pyqasm/accelerate/sv_sim.pyx | 405 +++++++++++++++++++++++++++ src/pyqasm/modules/base.py | 4 + src/pyqasm/simulator/statevector.py | 415 +++++++++++++++++++--------- tests/test_perf_regression.py | 183 ++++++++++++ tests/test_sv_sim.py | 129 +++++++-- 13 files changed, 1874 insertions(+), 150 deletions(-) create mode 100644 benchmarks/bench_qft.png create mode 100644 benchmarks/bench_random.png create mode 100644 benchmarks/bench_simulator.py create mode 100644 benchmarks/plot_benchmarks.py create mode 100644 benchmarks/profile_simulator.py create mode 100644 setup.py create mode 100644 src/pyqasm/accelerate/sv_sim.pyx create mode 100644 tests/test_perf_regression.py diff --git a/.gitignore b/.gitignore index 09e6a753..c9961e83 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ __pycache__/ # Cython build files src/pyqasm/accelerate/linalg.c +src/pyqasm/accelerate/sv_sim.c # Distribution / packaging .Python diff --git a/benchmarks/bench_qft.png b/benchmarks/bench_qft.png new file mode 100644 index 0000000000000000000000000000000000000000..2cc7971cb069aa8737bf3dd8ef56a80ad4024717 GIT binary patch literal 132089 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∾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 literal 0 HcmV?d00001 diff --git a/benchmarks/bench_random.png b/benchmarks/bench_random.png new file mode 100644 index 0000000000000000000000000000000000000000..f9c4adba5eaa3871eb346c7d49baee0e1de6aedc GIT binary patch literal 139227 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 e_8k-6T{6ifSJo8Oa8? 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 k>-;ti!02! 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 2 and rng.random() < 0.4: + name = rng.choice(TWO_GATE_NAMES) + q0, q1 = rng.sample(range(num_qubits), 2) + gates.append((name, (q0, q1), ())) + else: + name = rng.choice(SINGLE_GATE_NAMES) + q = rng.randint(0, num_qubits - 1) + if name == "rx": + gates.append((name, (q,), (1.0,))) + elif name == "ry": + gates.append((name, (q,), (0.5,))) + elif name == "rz": + gates.append((name, (q,), (0.3,))) + else: + gates.append((name, (q,), ())) + return num_qubits, gates + + +def generate_qft_gates(num_qubits: int): + """Return (num_qubits, gate_list) for a QFT circuit.""" + gates = [] + for i in range(num_qubits): + gates.append(("h", (i,), ())) + for j in range(i + 1, num_qubits): + k = j - i + angle = math.pi / (2**k) + gates.append(("crz", (j, i), (angle,))) + for i in range(num_qubits // 2): + gates.append(("swap", (i, num_qubits - 1 - i), ())) + return num_qubits, gates + + +# --------------------------------------------------------------------------- +# Gate-list → QASM 3 string (for PyQASM / Qiskit) +# --------------------------------------------------------------------------- + +def gates_to_qasm(num_qubits, gates): + lines = [ + "OPENQASM 3;", + 'include "stdgates.inc";', + f"qubit[{num_qubits}] q;", + ] + for name, qubits, params in gates: + if len(qubits) == 1: + q = qubits[0] + if params: + lines.append(f"{name}({params[0]}) q[{q}];") + else: + lines.append(f"{name} q[{q}];") + else: + q0, q1 = qubits + if params: + lines.append(f"{name}({params[0]}) q[{q0}], q[{q1}];") + else: + lines.append(f"{name} q[{q0}], q[{q1}];") + return "\n".join(lines) + + +# --------------------------------------------------------------------------- +# Simulator wrappers +# --------------------------------------------------------------------------- + +N_REPEATS = 5 + + +def _median_time(fn, n_repeats=N_REPEATS): + """Run fn() n_repeats times, return (median_seconds, last_result).""" + times = [] + result = None + for _ in range(n_repeats): + start = time.perf_counter() + result = fn() + times.append(time.perf_counter() - start) + return float(np.median(times)), result + + +# -- PyQASM ------------------------------------------------------------------ + +def prepare_pyqasm(num_qubits, gates): + from pyqasm import loads as pyqasm_loads + from pyqasm.simulator.statevector import Simulator + + qasm = gates_to_qasm(num_qubits, gates) + module = pyqasm_loads(qasm) + module.unroll() + module.remove_idle_qubits() + sim = Simulator(seed=0) + return module, sim + + +def bench_pyqasm(module, sim): + def run(): + return sim.run(module, shots=0).final_statevector + return _median_time(run) + + +# -- Qiskit Aer --------------------------------------------------------------- + +def prepare_qiskit(num_qubits, gates): + from qiskit import transpile + from qiskit.qasm3 import loads as qiskit_loads + from qiskit_aer import AerSimulator + + qasm = gates_to_qasm(num_qubits, gates) + backend = AerSimulator(method="statevector") + circuit = qiskit_loads(qasm) + circuit.save_statevector() + compiled = transpile(circuit, backend, optimization_level=0) + return compiled, backend + + +def bench_qiskit(compiled, backend): + def run(): + job = backend.run(compiled) + result = job.result() + return np.asarray(result.get_statevector(compiled)) + return _median_time(run) + + +# -- Cirq ---------------------------------------------------------------------- + +def _build_cirq_circuit(num_qubits, gates): + import cirq + + qubits = cirq.LineQubit.range(num_qubits) + ops = [] + for name, qubit_indices, params in gates: + if name == "h": + ops.append(cirq.H(qubits[qubit_indices[0]])) + elif name == "x": + ops.append(cirq.X(qubits[qubit_indices[0]])) + elif name == "y": + ops.append(cirq.Y(qubits[qubit_indices[0]])) + elif name == "z": + ops.append(cirq.Z(qubits[qubit_indices[0]])) + elif name == "s": + ops.append(cirq.S(qubits[qubit_indices[0]])) + elif name == "t": + ops.append(cirq.T(qubits[qubit_indices[0]])) + elif name == "rx": + ops.append(cirq.rx(params[0])(qubits[qubit_indices[0]])) + elif name == "ry": + ops.append(cirq.ry(params[0])(qubits[qubit_indices[0]])) + elif name == "rz": + ops.append(cirq.rz(params[0])(qubits[qubit_indices[0]])) + elif name == "cx": + ops.append(cirq.CNOT(qubits[qubit_indices[0]], qubits[qubit_indices[1]])) + elif name == "cy": + ops.append( + cirq.ControlledGate(cirq.Y).on( + qubits[qubit_indices[0]], qubits[qubit_indices[1]] + ) + ) + elif name == "cz": + ops.append(cirq.CZ(qubits[qubit_indices[0]], qubits[qubit_indices[1]])) + elif name == "swap": + ops.append(cirq.SWAP(qubits[qubit_indices[0]], qubits[qubit_indices[1]])) + elif name == "crz": + ops.append( + cirq.ControlledGate(cirq.rz(params[0])).on( + qubits[qubit_indices[0]], qubits[qubit_indices[1]] + ) + ) + return cirq.Circuit(ops), qubits + + +def prepare_cirq(num_qubits, gates): + circuit, qubits = _build_cirq_circuit(num_qubits, gates) + import cirq + sim = cirq.Simulator(dtype=np.complex128) + return circuit, sim, qubits + + +def bench_cirq(circuit, sim, qubits): + def run(): + result = sim.simulate(circuit, qubit_order=qubits) + return result.final_state_vector + return _median_time(run) + + +# -- PennyLane Lightning ------------------------------------------------------- + +def _build_pennylane_fn(num_qubits, gates): + import pennylane as qml + + dev = qml.device("lightning.qubit", wires=num_qubits) + + gate_list = list(gates) # capture for closure + + @qml.qnode(dev) + def circuit(): + for name, qubit_indices, params in gate_list: + if name == "h": + qml.Hadamard(qubit_indices[0]) + elif name == "x": + qml.PauliX(qubit_indices[0]) + elif name == "y": + qml.PauliY(qubit_indices[0]) + elif name == "z": + qml.PauliZ(qubit_indices[0]) + elif name == "s": + qml.S(qubit_indices[0]) + elif name == "t": + qml.T(qubit_indices[0]) + elif name == "rx": + qml.RX(params[0], qubit_indices[0]) + elif name == "ry": + qml.RY(params[0], qubit_indices[0]) + elif name == "rz": + qml.RZ(params[0], qubit_indices[0]) + elif name == "cx": + qml.CNOT([qubit_indices[0], qubit_indices[1]]) + elif name == "cy": + qml.CY([qubit_indices[0], qubit_indices[1]]) + elif name == "cz": + qml.CZ([qubit_indices[0], qubit_indices[1]]) + elif name == "swap": + qml.SWAP([qubit_indices[0], qubit_indices[1]]) + elif name == "crz": + qml.CRZ(params[0], [qubit_indices[0], qubit_indices[1]]) + return qml.state() + + return circuit + + +def prepare_pennylane(num_qubits, gates): + circuit_fn = _build_pennylane_fn(num_qubits, gates) + return (circuit_fn,) + + +def bench_pennylane(circuit_fn): + def run(): + return np.asarray(circuit_fn()) + return _median_time(run) + + +# --------------------------------------------------------------------------- +# Qubit ordering helpers +# --------------------------------------------------------------------------- + +def _reverse_endian(sv, num_qubits): + """Convert big-endian statevector to little-endian (or vice versa).""" + return sv.reshape([2] * num_qubits).transpose(range(num_qubits - 1, -1, -1)).ravel() + + +# --------------------------------------------------------------------------- +# Main +# --------------------------------------------------------------------------- + +def run_benchmarks(circuit_name, configs, generator_fn): + """Run all simulators on a set of circuit configs.""" + headers = [ + "Qubits", "Depth", + "PyQASM (ms)", "Qiskit (ms)", "Cirq (ms)", "Lightning (ms)", + "Correct", + ] + rows = [] + + print(f"\n{'='*90}") + print(f" {circuit_name} circuits (median of {N_REPEATS} runs)") + print(f"{'='*90}") + + for config in configs: + if len(config) == 2: + num_qubits, depth = config + nq, gates = generator_fn(num_qubits, depth) + else: + num_qubits = config[0] + depth = None + nq, gates = generator_fn(num_qubits) + + depth_str = str(depth) if depth is not None else "QFT" + + # --- Prepare all simulators --- + pyqasm_args = prepare_pyqasm(nq, gates) + qiskit_args = prepare_qiskit(nq, gates) + cirq_args = prepare_cirq(nq, gates) + pl_args = prepare_pennylane(nq, gates) + + # --- Benchmark --- + t_pyqasm, sv_pyqasm = bench_pyqasm(*pyqasm_args) + t_qiskit, sv_qiskit = bench_qiskit(*qiskit_args) + t_cirq, sv_cirq = bench_cirq(*cirq_args) + t_pl, sv_pl = bench_pennylane(*pl_args) + + # --- Correctness: compare all against PyQASM (little-endian) --- + # Qiskit Aer is little-endian like PyQASM + # Cirq, PennyLane are big-endian → convert + sv_cirq_le = _reverse_endian(sv_cirq, nq) + sv_pl_le = _reverse_endian(sv_pl, nq) + + checks = { + "qiskit": np.allclose(sv_pyqasm, sv_qiskit, atol=1e-10), + "cirq": np.allclose(sv_pyqasm, sv_cirq_le, atol=1e-10), + "lightning": np.allclose(sv_pyqasm, sv_pl_le, atol=1e-10), + } + all_pass = all(checks.values()) + status = "PASS" if all_pass else "FAIL " + ",".join( + k for k, v in checks.items() if not v + ) + + rows.append([ + nq, depth_str, + f"{t_pyqasm*1000:.2f}", + f"{t_qiskit*1000:.2f}", + f"{t_cirq*1000:.2f}", + f"{t_pl*1000:.2f}", + status, + ]) + + print( + f" n={nq:2d} depth={depth_str:>4s} " + f"pyqasm={t_pyqasm*1000:8.2f} " + f"qiskit={t_qiskit*1000:8.2f} " + f"cirq={t_cirq*1000:8.2f} " + f"lightning={t_pl*1000:8.2f} ms " + f"{status}" + ) + + print() + print(tabulate(rows, headers=headers, tablefmt="github")) + return rows + + +def main(): + random_configs = [ + (4, 20), + (6, 40), + (8, 60), + (10, 80), + (12, 100), + (14, 150), + (16, 200), + (18, 250), + (20, 300), + (22, 400), + ] + + qft_configs = [ + (4,), + (6,), + (8,), + (10,), + (12,), + (14,), + (16,), + ] + + run_benchmarks("Random", random_configs, generate_random_gates) + run_benchmarks("QFT", qft_configs, generate_qft_gates) + + +if __name__ == "__main__": + main() diff --git a/benchmarks/plot_benchmarks.py b/benchmarks/plot_benchmarks.py new file mode 100644 index 00000000..8f83a299 --- /dev/null +++ b/benchmarks/plot_benchmarks.py @@ -0,0 +1,160 @@ +#!/usr/bin/env python3 +# Copyright 2025 qBraid +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Generate benchmark plots comparing PyQASM against other simulators. + +Usage: + python benchmarks/plot_benchmarks.py +""" + +import os +import sys + +import matplotlib.pyplot as plt +import numpy as np + +# Ensure we can import from the benchmarks directory +sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) + +from bench_simulator import ( + N_REPEATS, + bench_cirq, + bench_pennylane, + bench_pyqasm, + bench_qiskit, + generate_qft_gates, + generate_random_gates, + prepare_cirq, + prepare_pennylane, + prepare_pyqasm, + prepare_qiskit, +) + +RANDOM_CONFIGS = [ + (4, 20), + (6, 40), + (8, 60), + (10, 80), + (12, 100), + (14, 150), + (16, 200), + (18, 250), + (20, 300), + (22, 400), +] + +QFT_CONFIGS = [4, 6, 8, 10, 12, 14, 16, 18, 20] + +SIMULATORS = { + "PyQASM": (prepare_pyqasm, bench_pyqasm), + "Qiskit Aer": (prepare_qiskit, bench_qiskit), + "Cirq": (prepare_cirq, bench_cirq), + "PennyLane Lightning": (prepare_pennylane, bench_pennylane), +} + +COLORS = { + "PyQASM": "#2563eb", + "Qiskit Aer": "#16a34a", + "Cirq": "#eab308", + "PennyLane Lightning": "#dc2626", +} + +MARKERS = { + "PyQASM": "o", + "Qiskit Aer": "s", + "Cirq": "D", + "PennyLane Lightning": "^", +} + + +def collect_times(circuit_type, configs): + """Run benchmarks and return {simulator_name: ([qubits], [times_ms])}.""" + results = {name: ([], []) for name in SIMULATORS} + + for config in configs: + if circuit_type == "random": + nq, depth = config + num_qubits, gates = generate_random_gates(nq, depth) + label = f"n={nq}, d={depth}" + else: + nq = config + num_qubits, gates = generate_qft_gates(nq) + label = f"QFT n={nq}" + + print(f" {label} ...", end="", flush=True) + for name, (prepare_fn, bench_fn) in SIMULATORS.items(): + args = prepare_fn(num_qubits, gates) + t, _ = bench_fn(*args) + results[name][0].append(num_qubits) + results[name][1].append(t * 1000) # ms + print(f" {name}={t*1000:.1f}ms", end="", flush=True) + print() + + return results + + +def plot_comparison(results, title, filename): + """Create a log-scale line plot comparing simulators.""" + fig, ax = plt.subplots(figsize=(10, 6)) + + for name in SIMULATORS: + qubits, times = results[name] + ax.plot( + qubits, times, + marker=MARKERS[name], + color=COLORS[name], + linewidth=2, + markersize=7, + label=name, + ) + + ax.set_yscale("log") + ax.set_xlabel("Number of Qubits", fontsize=13) + ax.set_ylabel("Simulation Time (ms)", fontsize=13) + ax.set_title(title, fontsize=15) + ax.legend(fontsize=11) + ax.grid(True, which="both", ls="--", alpha=0.4) + ax.set_xticks(results["PyQASM"][0]) + fig.tight_layout() + out_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), filename) + fig.savefig(out_path, dpi=150) + print(f" Saved: {out_path}") + plt.close(fig) + + +def main(): + print(f"Running benchmarks (median of {N_REPEATS} runs each)\n") + + print("Random circuits:") + random_results = collect_times("random", RANDOM_CONFIGS) + plot_comparison( + random_results, + "Statevector Simulation Time — Random Circuits", + "bench_random.png", + ) + + print("\nQFT circuits:") + qft_results = collect_times("qft", QFT_CONFIGS) + plot_comparison( + qft_results, + "Statevector Simulation Time — QFT Circuits", + "bench_qft.png", + ) + + print("\nDone.") + + +if __name__ == "__main__": + main() diff --git a/benchmarks/profile_simulator.py b/benchmarks/profile_simulator.py new file mode 100644 index 00000000..2bbb1a91 --- /dev/null +++ b/benchmarks/profile_simulator.py @@ -0,0 +1,231 @@ +#!/usr/bin/env python3 +# Copyright 2025 qBraid +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Profiling script for PyQASM statevector simulator. + +Three modes: + 1. cProfile function-level profiling + 2. Section timing (preprocess vs simulation vs post-processing) + 3. Per-kernel timing (accumulate time per opcode type) + +Usage: + python benchmarks/profile_simulator.py [--mode cprofile|section|kernel] [--qubits N] [--depth D] +""" + +import argparse +import cProfile +import pstats +import random +import time +from io import StringIO + +import numpy as np + +from pyqasm import loads as pyqasm_loads +from pyqasm.simulator.statevector import ( + Simulator, + _OP_CONTROLLED, + _OP_CTRL_DIAGONAL, + _OP_DIAGONAL, + _OP_SINGLE, + _OP_TWO_QUBIT, + _fuse_gates, + _preprocess, +) +from pyqasm.accelerate.sv_sim import ( + apply_circuit, + apply_controlled_diagonal_gate, + apply_controlled_gate, + apply_diagonal_gate, + apply_single_qubit_gate, + apply_two_qubit_gate, +) + + +SINGLE_QUBIT_GATES = ["h", "x", "y", "z", "s", "t", "rx(1.0)", "ry(0.5)", "rz(0.3)"] +TWO_QUBIT_GATES = ["cx", "cy", "cz", "swap"] + +OP_NAMES = { + _OP_SINGLE: "single", + _OP_CONTROLLED: "controlled", + _OP_DIAGONAL: "diagonal", + _OP_CTRL_DIAGONAL: "ctrl_diag", + _OP_TWO_QUBIT: "two_qubit", +} + + +def generate_random_qasm(num_qubits: int, depth: int, seed: int = 42) -> str: + rng = random.Random(seed) + lines = [ + "OPENQASM 3;", + 'include "stdgates.inc";', + f"qubit[{num_qubits}] q;", + ] + for _ in range(depth): + if num_qubits >= 2 and rng.random() < 0.4: + gate = rng.choice(TWO_QUBIT_GATES) + q0, q1 = rng.sample(range(num_qubits), 2) + lines.append(f"{gate} q[{q0}], q[{q1}];") + else: + gate = rng.choice(SINGLE_QUBIT_GATES) + q = rng.randint(0, num_qubits - 1) + lines.append(f"{gate} q[{q}];") + return "\n".join(lines) + + +def mode_cprofile(num_qubits, depth): + """Function-level profiling with cProfile.""" + qasm = generate_random_qasm(num_qubits, depth) + sim = Simulator(seed=0) + module = pyqasm_loads(qasm) + + print(f"\n=== cProfile: {num_qubits} qubits, depth {depth} ===\n") + pr = cProfile.Profile() + pr.enable() + sim.run(module, shots=0) + pr.disable() + + s = StringIO() + ps = pstats.Stats(pr, stream=s).sort_stats("tottime") + ps.print_stats(30) + print(s.getvalue()) + + +def mode_section(num_qubits, depth): + """Section timing: preprocess vs simulation vs post-processing.""" + qasm = generate_random_qasm(num_qubits, depth) + module = pyqasm_loads(qasm) + module.unroll() + module.remove_idle_qubits() + nq = module.num_qubits + + print(f"\n=== Section timing: {num_qubits} qubits, depth {depth} ===\n") + + # Preprocess + t0 = time.perf_counter_ns() + n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = \ + _preprocess(module, nq) + t1 = time.perf_counter_ns() + + # Fusion + if n > 0: + n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = \ + _fuse_gates(n, opcodes, targets, controls, gate_params, diag_phases, + tq_offsets, tq_gates) + t2 = time.perf_counter_ns() + + # Simulation + sv = np.zeros(2**nq, dtype=np.complex128) + sv[0] = 1.0 + if n > 0: + apply_circuit(sv, nq, opcodes, targets, controls, gate_params, diag_phases, + tq_offsets, tq_gates, n) + t3 = time.perf_counter_ns() + + # Post-processing + probabilities = np.abs(sv) ** 2 + t4 = time.perf_counter_ns() + + pre_us = (t1 - t0) / 1000 + fuse_us = (t2 - t1) / 1000 + sim_us = (t3 - t2) / 1000 + post_us = (t4 - t3) / 1000 + total_us = (t4 - t0) / 1000 + + print(f" Instructions: {n}") + print(f" Preprocess: {pre_us:10.1f} us ({pre_us/total_us*100:5.1f}%)") + print(f" Gate fusion: {fuse_us:10.1f} us ({fuse_us/total_us*100:5.1f}%)") + print(f" Simulation: {sim_us:10.1f} us ({sim_us/total_us*100:5.1f}%)") + print(f" Post-process: {post_us:10.1f} us ({post_us/total_us*100:5.1f}%)") + print(f" Total: {total_us:10.1f} us") + + +def mode_kernel(num_qubits, depth): + """Per-kernel timing: accumulate time per opcode type.""" + qasm = generate_random_qasm(num_qubits, depth) + module = pyqasm_loads(qasm) + module.unroll() + module.remove_idle_qubits() + nq = module.num_qubits + + n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = \ + _preprocess(module, nq) + if n > 0: + n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = \ + _fuse_gates(n, opcodes, targets, controls, gate_params, diag_phases, + tq_offsets, tq_gates) + + sv = np.zeros(2**nq, dtype=np.complex128) + sv[0] = 1.0 + + kernel_times = {} + kernel_counts = {} + + print(f"\n=== Per-kernel timing: {num_qubits} qubits, depth {depth} ===\n") + + for i in range(n): + op = int(opcodes[i]) + tgt = int(targets[i]) + ctrl = int(controls[i]) + gp_off = i * 4 + dp_off = i * 2 + + t0 = time.perf_counter_ns() + if op == _OP_SINGLE: + flat = gate_params[gp_off:gp_off + 4].copy() + apply_single_qubit_gate(sv, nq, tgt, flat) + elif op == _OP_CONTROLLED: + flat = gate_params[gp_off:gp_off + 4].copy() + apply_controlled_gate(sv, nq, ctrl, tgt, flat) + elif op == _OP_DIAGONAL: + apply_diagonal_gate(sv, nq, tgt, diag_phases[dp_off], diag_phases[dp_off + 1]) + elif op == _OP_CTRL_DIAGONAL: + apply_controlled_diagonal_gate(sv, nq, ctrl, tgt, diag_phases[dp_off]) + elif op == _OP_TWO_QUBIT: + tq_off = int(tq_offsets[i]) + flat = tq_gates[tq_off:tq_off + 16].copy() + apply_two_qubit_gate(sv, nq, ctrl, tgt, flat) + t1 = time.perf_counter_ns() + + name = OP_NAMES.get(op, f"op_{op}") + kernel_times[name] = kernel_times.get(name, 0) + (t1 - t0) + kernel_counts[name] = kernel_counts.get(name, 0) + 1 + + total_ns = sum(kernel_times.values()) + for name in sorted(kernel_times.keys()): + t_us = kernel_times[name] / 1000 + cnt = kernel_counts[name] + pct = kernel_times[name] / total_ns * 100 if total_ns > 0 else 0 + print(f" {name:15s}: {t_us:10.1f} us ({pct:5.1f}%) count={cnt}") + print(f" {'total':15s}: {total_ns/1000:10.1f} us") + + +def main(): + parser = argparse.ArgumentParser(description="Profile PyQASM simulator") + parser.add_argument("--mode", choices=["cprofile", "section", "kernel"], default="section") + parser.add_argument("--qubits", type=int, default=16) + parser.add_argument("--depth", type=int, default=200) + args = parser.parse_args() + + if args.mode == "cprofile": + mode_cprofile(args.qubits, args.depth) + elif args.mode == "section": + mode_section(args.qubits, args.depth) + elif args.mode == "kernel": + mode_kernel(args.qubits, args.depth) + + +if __name__ == "__main__": + main() diff --git a/pyproject.toml b/pyproject.toml index ca80453e..c4a4cb4f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -52,9 +52,6 @@ pyqasm = ["py.typed", "*.pyx"] [tool.setuptools] packages = {find = {where = ["src"]}} -ext-modules = [ - {name = "pyqasm.accelerate.linalg", sources = ["src/pyqasm/accelerate/linalg.pyx"], include-dirs = ["numpy"]} -] [project.scripts] pyqasm = "pyqasm.cli.main:app" @@ -74,6 +71,9 @@ line_length = 100 [tool.pytest.ini_options] addopts = "-ra" testpaths = ["tests"] +markers = [ + "benchmark: performance regression tests (may be slow)", +] [tool.coverage.run] source = ["pyqasm"] diff --git a/setup.py b/setup.py new file mode 100644 index 00000000..f8621a39 --- /dev/null +++ b/setup.py @@ -0,0 +1,84 @@ +"""Build configuration for Cython extensions with optional OpenMP support.""" + +import os +import platform +import subprocess +import sys +import tempfile + +import numpy as np +from Cython.Build import cythonize +from setuptools import Extension, setup + +BASE_COMPILE_ARGS = ["-O3", "-ffast-math", "-march=native"] +BASE_LINK_ARGS = [] + + +def _check_openmp(): + """Detect OpenMP availability and return (compile_args, link_args).""" + test_code = b"#include \nint main() { return omp_get_max_threads(); }\n" + + candidates = [] + if sys.platform == "darwin": + # macOS: try libomp from Homebrew + for prefix in ["/opt/homebrew/opt/libomp", "/usr/local/opt/libomp"]: + if os.path.isdir(prefix): + candidates.append(( + ["-Xpreprocessor", "-fopenmp", f"-I{prefix}/include"], + [f"-L{prefix}/lib", "-lomp"], + )) + # Also try Xcode / system clang with -fopenmp + candidates.append((["-fopenmp"], ["-fopenmp"])) + else: + # Linux / other: standard -fopenmp + candidates.append((["-fopenmp"], ["-fopenmp"])) + + for cflags, ldflags in candidates: + try: + with tempfile.NamedTemporaryFile(suffix=".c", delete=False) as f: + f.write(test_code) + f.flush() + cmd = ["cc"] + cflags + ldflags + [f.name, "-o", f.name + ".out"] + subprocess.check_call(cmd, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) + os.unlink(f.name + ".out") + os.unlink(f.name) + return cflags, ldflags + except (subprocess.CalledProcessError, FileNotFoundError, OSError): + try: + os.unlink(f.name) + except OSError: + pass + continue + + return [], [] + + +omp_cflags, omp_ldflags = _check_openmp() +if omp_cflags: + print(f"OpenMP detected: compile={omp_cflags}, link={omp_ldflags}") +else: + print("OpenMP not available — building single-threaded kernels") + +sv_sim_compile_args = BASE_COMPILE_ARGS + omp_cflags +sv_sim_link_args = BASE_LINK_ARGS + omp_ldflags + +extensions = [ + Extension( + "pyqasm.accelerate.linalg", + sources=["src/pyqasm/accelerate/linalg.pyx"], + include_dirs=[np.get_include()], + extra_compile_args=BASE_COMPILE_ARGS, + extra_link_args=BASE_LINK_ARGS, + ), + Extension( + "pyqasm.accelerate.sv_sim", + sources=["src/pyqasm/accelerate/sv_sim.pyx"], + include_dirs=[np.get_include()], + extra_compile_args=sv_sim_compile_args, + extra_link_args=sv_sim_link_args, + ), +] + +setup( + ext_modules=cythonize(extensions, language_level=3), +) diff --git a/src/pyqasm/accelerate/sv_sim.pyx b/src/pyqasm/accelerate/sv_sim.pyx new file mode 100644 index 00000000..7be58233 --- /dev/null +++ b/src/pyqasm/accelerate/sv_sim.pyx @@ -0,0 +1,405 @@ +# Copyright 2025 qBraid +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# cython: language_level=3 +# cython: infer_types=True + +import os +import cython +import numpy as np +from cython.parallel cimport prange +from openmp cimport omp_get_max_threads + +# Threshold: parallelize when statevector has >= this many pairs +# 2^17 = 131072 pairs corresponds to ~18 qubits (4 MB statevector) +# Below this, OpenMP thread overhead dominates over parallel gains. +DEF PARALLEL_THRESHOLD = 131072 + +# Module-level flag: parallelism is opt-in via PYQASM_NUM_THREADS env var. +# Default is serial (1 thread) to avoid conflicts with other OpenMP runtimes +# (e.g. Qiskit Aer) in the same process. Set PYQASM_NUM_THREADS>1 to enable. +cdef int _max_threads = int(os.environ.get("PYQASM_NUM_THREADS", "1")) +if _max_threads > 1: + from openmp cimport omp_set_num_threads + omp_set_num_threads(_max_threads) +else: + from openmp cimport omp_set_num_threads + omp_set_num_threads(1) + +cdef bint _use_threads() noexcept nogil: + """Check if multithreading is enabled.""" + return omp_get_max_threads() > 1 + + +# --- cdef kernel functions --- +# Each kernel manages its own GIL release: prange paths use prange's +# built-in nogil, serial paths use explicit `with nogil:` blocks. + +@cython.boundscheck(False) +@cython.wraparound(False) +@cython.cdivision(True) +cdef void _apply_single_qubit_gate( + double complex* sv, + Py_ssize_t num_qubits, + Py_ssize_t target, + double complex g00, + double complex g01, + double complex g10, + double complex g11, +) noexcept: + cdef Py_ssize_t half = 1 << (num_qubits - 1) + cdef Py_ssize_t step = 1 << target + cdef Py_ssize_t s, i0, i1 + cdef double complex a0, a1 + + if half >= PARALLEL_THRESHOLD and _use_threads(): + for s in prange(half, schedule='static', nogil=True): + i0 = ((s >> target) << (target + 1)) | (s & (step - 1)) + i1 = i0 | step + a0 = sv[i0] + a1 = sv[i1] + sv[i0] = g00 * a0 + g01 * a1 + sv[i1] = g10 * a0 + g11 * a1 + else: + with nogil: + for s in range(half): + i0 = ((s >> target) << (target + 1)) | (s & (step - 1)) + i1 = i0 | step + a0 = sv[i0] + a1 = sv[i1] + sv[i0] = g00 * a0 + g01 * a1 + sv[i1] = g10 * a0 + g11 * a1 + + +@cython.boundscheck(False) +@cython.wraparound(False) +@cython.cdivision(True) +cdef void _apply_controlled_gate( + double complex* sv, + Py_ssize_t num_qubits, + Py_ssize_t control, + Py_ssize_t target, + double complex g00, + double complex g01, + double complex g10, + double complex g11, +) noexcept: + cdef Py_ssize_t quarter = 1 << (num_qubits - 2) + cdef Py_ssize_t lo, hi + cdef Py_ssize_t lo_mask, hi_limit + cdef Py_ssize_t s, base, i0, i1 + cdef double complex a0, a1 + cdef Py_ssize_t ctrl_bit = 1 << control + cdef Py_ssize_t tgt_bit = 1 << target + + if control < target: + lo = control + hi = target + else: + lo = target + hi = control + + lo_mask = (1 << lo) - 1 + hi_limit = (1 << hi) - 1 + + if quarter >= PARALLEL_THRESHOLD and _use_threads(): + for s in prange(quarter, schedule='static', nogil=True): + base = (s & lo_mask) | (((s >> lo) << (lo + 1)) & hi_limit) | ((s >> (hi - 1)) << (hi + 1)) + base = base | ctrl_bit + i0 = base + i1 = base | tgt_bit + a0 = sv[i0] + a1 = sv[i1] + sv[i0] = g00 * a0 + g01 * a1 + sv[i1] = g10 * a0 + g11 * a1 + else: + with nogil: + for s in range(quarter): + base = (s & lo_mask) | (((s >> lo) << (lo + 1)) & hi_limit) | ((s >> (hi - 1)) << (hi + 1)) + base = base | ctrl_bit + i0 = base + i1 = base | tgt_bit + a0 = sv[i0] + a1 = sv[i1] + sv[i0] = g00 * a0 + g01 * a1 + sv[i1] = g10 * a0 + g11 * a1 + + +@cython.boundscheck(False) +@cython.wraparound(False) +@cython.cdivision(True) +cdef void _apply_diagonal_gate( + double complex* sv, + Py_ssize_t num_qubits, + Py_ssize_t target, + double complex phase0, + double complex phase1, +) noexcept: + cdef Py_ssize_t half = 1 << (num_qubits - 1) + cdef Py_ssize_t step = 1 << target + cdef Py_ssize_t s, i0, i1 + + if half >= PARALLEL_THRESHOLD and _use_threads(): + for s in prange(half, schedule='static', nogil=True): + i0 = ((s >> target) << (target + 1)) | (s & (step - 1)) + i1 = i0 | step + sv[i0] = phase0 * sv[i0] + sv[i1] = phase1 * sv[i1] + else: + with nogil: + for s in range(half): + i0 = ((s >> target) << (target + 1)) | (s & (step - 1)) + i1 = i0 | step + sv[i0] = phase0 * sv[i0] + sv[i1] = phase1 * sv[i1] + + +@cython.boundscheck(False) +@cython.wraparound(False) +@cython.cdivision(True) +cdef void _apply_controlled_diagonal_gate( + double complex* sv, + Py_ssize_t num_qubits, + Py_ssize_t control, + Py_ssize_t target, + double complex phase, +) noexcept: + cdef Py_ssize_t quarter = 1 << (num_qubits - 2) + cdef Py_ssize_t lo, hi + cdef Py_ssize_t lo_mask, hi_limit + cdef Py_ssize_t s, base, idx + cdef Py_ssize_t ctrl_bit = 1 << control + cdef Py_ssize_t tgt_bit = 1 << target + + if control < target: + lo = control + hi = target + else: + lo = target + hi = control + + lo_mask = (1 << lo) - 1 + hi_limit = (1 << hi) - 1 + + if quarter >= PARALLEL_THRESHOLD and _use_threads(): + for s in prange(quarter, schedule='static', nogil=True): + base = (s & lo_mask) | (((s >> lo) << (lo + 1)) & hi_limit) | ((s >> (hi - 1)) << (hi + 1)) + idx = base | ctrl_bit | tgt_bit + sv[idx] = phase * sv[idx] + else: + with nogil: + for s in range(quarter): + base = (s & lo_mask) | (((s >> lo) << (lo + 1)) & hi_limit) | ((s >> (hi - 1)) << (hi + 1)) + idx = base | ctrl_bit | tgt_bit + sv[idx] = phase * sv[idx] + + +@cython.boundscheck(False) +@cython.wraparound(False) +@cython.cdivision(True) +cdef void _apply_two_qubit_gate( + double complex* sv, + Py_ssize_t num_qubits, + Py_ssize_t qubit0, + Py_ssize_t qubit1, + double complex* gate, +) noexcept: + cdef Py_ssize_t quarter = 1 << (num_qubits - 2) + cdef Py_ssize_t lo, hi + cdef Py_ssize_t lo_mask, hi_limit + cdef Py_ssize_t s, base, i00, i01, i10, i11 + cdef double complex a00, a01, a10, a11 + cdef Py_ssize_t q0_bit = 1 << qubit0 + cdef Py_ssize_t q1_bit = 1 << qubit1 + cdef double complex g0 = gate[0], g1 = gate[1], g2 = gate[2], g3 = gate[3] + cdef double complex g4 = gate[4], g5 = gate[5], g6 = gate[6], g7 = gate[7] + cdef double complex g8 = gate[8], g9 = gate[9], g10 = gate[10], g11_ = gate[11] + cdef double complex g12 = gate[12], g13 = gate[13], g14 = gate[14], g15 = gate[15] + + if qubit0 < qubit1: + lo = qubit0 + hi = qubit1 + else: + lo = qubit1 + hi = qubit0 + + lo_mask = (1 << lo) - 1 + hi_limit = (1 << hi) - 1 + + if quarter >= PARALLEL_THRESHOLD and _use_threads(): + for s in prange(quarter, schedule='static', nogil=True): + base = (s & lo_mask) | (((s >> lo) << (lo + 1)) & hi_limit) | ((s >> (hi - 1)) << (hi + 1)) + i00 = base + i01 = base | q0_bit + i10 = base | q1_bit + i11 = base | q0_bit | q1_bit + a00 = sv[i00] + a01 = sv[i01] + a10 = sv[i10] + a11 = sv[i11] + sv[i00] = g0 * a00 + g1 * a01 + g2 * a10 + g3 * a11 + sv[i01] = g4 * a00 + g5 * a01 + g6 * a10 + g7 * a11 + sv[i10] = g8 * a00 + g9 * a01 + g10 * a10 + g11_ * a11 + sv[i11] = g12 * a00 + g13 * a01 + g14 * a10 + g15 * a11 + else: + with nogil: + for s in range(quarter): + base = (s & lo_mask) | (((s >> lo) << (lo + 1)) & hi_limit) | ((s >> (hi - 1)) << (hi + 1)) + i00 = base + i01 = base | q0_bit + i10 = base | q1_bit + i11 = base | q0_bit | q1_bit + a00 = sv[i00] + a01 = sv[i01] + a10 = sv[i10] + a11 = sv[i11] + sv[i00] = g0 * a00 + g1 * a01 + g2 * a10 + g3 * a11 + sv[i01] = g4 * a00 + g5 * a01 + g6 * a10 + g7 * a11 + sv[i10] = g8 * a00 + g9 * a01 + g10 * a10 + g11_ * a11 + sv[i11] = g12 * a00 + g13 * a01 + g14 * a10 + g15 * a11 + + +# --- cpdef wrappers for Python API --- + +@cython.boundscheck(False) +@cython.wraparound(False) +cpdef void apply_single_qubit_gate( + double complex[::1] sv, + Py_ssize_t num_qubits, + Py_ssize_t target, + double complex[::1] gate, +) noexcept: + cdef double complex* sv_ptr = &sv[0] + _apply_single_qubit_gate(sv_ptr, num_qubits, target, gate[0], gate[1], gate[2], gate[3]) + + +@cython.boundscheck(False) +@cython.wraparound(False) +cpdef void apply_controlled_gate( + double complex[::1] sv, + Py_ssize_t num_qubits, + Py_ssize_t control, + Py_ssize_t target, + double complex[::1] gate, +) noexcept: + cdef double complex* sv_ptr = &sv[0] + _apply_controlled_gate(sv_ptr, num_qubits, control, target, gate[0], gate[1], gate[2], gate[3]) + + +@cython.boundscheck(False) +@cython.wraparound(False) +cpdef void apply_diagonal_gate( + double complex[::1] sv, + Py_ssize_t num_qubits, + Py_ssize_t target, + double complex phase0, + double complex phase1, +) noexcept: + cdef double complex* sv_ptr = &sv[0] + _apply_diagonal_gate(sv_ptr, num_qubits, target, phase0, phase1) + + +@cython.boundscheck(False) +@cython.wraparound(False) +cpdef void apply_controlled_diagonal_gate( + double complex[::1] sv, + Py_ssize_t num_qubits, + Py_ssize_t control, + Py_ssize_t target, + double complex phase, +) noexcept: + cdef double complex* sv_ptr = &sv[0] + _apply_controlled_diagonal_gate(sv_ptr, num_qubits, control, target, phase) + + +@cython.boundscheck(False) +@cython.wraparound(False) +cpdef void apply_two_qubit_gate( + double complex[::1] sv, + Py_ssize_t num_qubits, + Py_ssize_t qubit0, + Py_ssize_t qubit1, + double complex[::1] gate, +) noexcept: + cdef double complex* sv_ptr = &sv[0] + cdef double complex* gate_ptr = &gate[0] + _apply_two_qubit_gate(sv_ptr, num_qubits, qubit0, qubit1, gate_ptr) + + +# --- Batch dispatch: single Python->C crossing for entire circuit --- + +DEF OP_SINGLE = 0 +DEF OP_CONTROLLED = 1 +DEF OP_DIAGONAL = 2 +DEF OP_CTRL_DIAGONAL = 3 +DEF OP_TWO_QUBIT = 4 + +@cython.boundscheck(False) +@cython.wraparound(False) +@cython.cdivision(True) +cpdef void apply_circuit( + double complex[::1] sv, + Py_ssize_t num_qubits, + int[::1] opcodes, + int[::1] targets, + int[::1] controls, + double complex[::1] gate_params, + double complex[::1] diag_phases, + int[::1] two_qubit_offsets, + double complex[::1] two_qubit_gates, + Py_ssize_t n_instructions, +) noexcept: + """Execute an entire circuit. Each gate releases the GIL internally.""" + cdef Py_ssize_t i, gp_offset, dp_offset, tq_offset + cdef int op, tgt, ctrl + cdef double complex* sv_ptr = &sv[0] + cdef double complex* gp_ptr = &gate_params[0] + cdef double complex* dp_ptr = &diag_phases[0] + cdef double complex* tq_ptr = &two_qubit_gates[0] + + for i in range(n_instructions): + op = opcodes[i] + tgt = targets[i] + ctrl = controls[i] + gp_offset = i * 4 + dp_offset = i * 2 + + if op == OP_SINGLE: + _apply_single_qubit_gate( + sv_ptr, num_qubits, tgt, + gp_ptr[gp_offset], gp_ptr[gp_offset + 1], + gp_ptr[gp_offset + 2], gp_ptr[gp_offset + 3], + ) + elif op == OP_CONTROLLED: + _apply_controlled_gate( + sv_ptr, num_qubits, ctrl, tgt, + gp_ptr[gp_offset], gp_ptr[gp_offset + 1], + gp_ptr[gp_offset + 2], gp_ptr[gp_offset + 3], + ) + elif op == OP_DIAGONAL: + _apply_diagonal_gate( + sv_ptr, num_qubits, tgt, + dp_ptr[dp_offset], dp_ptr[dp_offset + 1], + ) + elif op == OP_CTRL_DIAGONAL: + _apply_controlled_diagonal_gate( + sv_ptr, num_qubits, ctrl, tgt, + dp_ptr[dp_offset], + ) + elif op == OP_TWO_QUBIT: + tq_offset = two_qubit_offsets[i] + _apply_two_qubit_gate( + sv_ptr, num_qubits, ctrl, tgt, + &tq_ptr[tq_offset], + ) diff --git a/src/pyqasm/modules/base.py b/src/pyqasm/modules/base.py index 3b21330a..b5317ba2 100644 --- a/src/pyqasm/modules/base.py +++ b/src/pyqasm/modules/base.py @@ -607,6 +607,10 @@ def unroll(self, **kwargs): if not kwargs: kwargs = {} + # Cache: skip if already unrolled (no kwargs means default unroll) + if not kwargs and len(self._unrolled_ast.statements) > 0: + return + try: self.num_qubits, self.num_clbits = 0, 0 if ext_gates := kwargs.get("external_gates"): diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index 3d95f46f..fdc0bd56 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -1,12 +1,16 @@ -# Copyright (C) 2025 qBraid +# Copyright 2025 qBraid # -# This file is part of PyQASM +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at # -# PyQASM is free software released under the GNU General Public License v3 -# or later. You can redistribute and/or modify it under the terms of the GPL v3. -# See the LICENSE file in the project root or . +# http://www.apache.org/licenses/LICENSE-2.0 # -# THERE IS NO WARRANTY for PyQASM, as per Section 15 of the GPL v3. +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. """ Statevector simulator for PyQASM. @@ -14,13 +18,22 @@ """ from collections import Counter -from dataclasses import dataclass, field +from dataclasses import dataclass import numpy as np -from openqasm3.ast import QuantumGate -from scipy import sparse +from openqasm3.ast import ( + BinaryExpression, + BinaryOperator, + FloatLiteral, + Identifier, + IntegerLiteral, + QuantumGate, + UnaryExpression, + UnaryOperator, +) from pyqasm import loads +from pyqasm.accelerate.sv_sim import apply_circuit from pyqasm.modules.base import QasmModule @@ -48,19 +61,6 @@ def rx(theta: float) -> np.ndarray: ) -def crz(theta: float) -> np.ndarray: - """Parameterized Controlled-Rz gate.""" - return np.array( - [ - [1, 0, 0, 0], - [0, 1, 0, 0], - [0, 0, np.exp(-1j * theta / 2), 0], - [0, 0, 0, np.exp(1j * theta / 2)], - ], - dtype=complex, - ) - - def u3(theta: float, phi: float, lam: float) -> np.ndarray: """Parameterized U3 gate (generic single-qubit rotation).""" return np.array( @@ -76,7 +76,6 @@ def u3(theta: float, phi: float, lam: float) -> np.ndarray: "rz": rz, "ry": ry, "rx": rx, - "crz": crz, "u3": u3, } @@ -86,16 +85,257 @@ def u3(theta: float, phi: float, lam: float) -> np.ndarray: "z": np.array([[1, 0], [0, -1]], dtype=complex), "h": np.array([[1, 1], [1, -1]], dtype=complex) / np.sqrt(2), "id": np.array([[1, 0], [0, 1]], dtype=complex), - "cx": np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, 1], [0, 0, 1, 0]], dtype=complex), - "cy": np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 0, -1j], [0, 0, 1j, 0]], dtype=complex), - "cz": np.array([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, -1]], dtype=complex), - "swap": np.array([[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, 1]], dtype=complex), "s": np.array([[1, 0], [0, 1j]], dtype=complex), "t": np.array([[1, 0], [0, np.exp(1j * np.pi / 4)]], dtype=complex), "sdg": np.array([[1, 0], [0, -1j]], dtype=complex), "tdg": np.array([[1, 0], [0, np.exp(-1j * np.pi / 4)]], dtype=complex), + "swap": np.array([[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, 1]], dtype=complex), } +CONTROLLED_GATE_SUB_UNITARIES: dict[str, np.ndarray] = { + "cx": np.array([[0, 1], [1, 0]], dtype=complex), + "cy": np.array([[0, -1j], [1j, 0]], dtype=complex), + "cz": np.array([[1, 0], [0, -1]], dtype=complex), +} + +# Pre-flatten non-parameterized gates for Cython (contiguous 1D arrays) +GATE_CACHE: dict[str, np.ndarray] = {} +for _name, _mat in NON_PARAMETERIZED_GATES.items(): + GATE_CACHE[_name] = np.ascontiguousarray(_mat.ravel()) +for _name, _mat in CONTROLLED_GATE_SUB_UNITARIES.items(): + GATE_CACHE[_name] = np.ascontiguousarray(_mat.ravel()) + +# Diagonal gate phases: gate_name -> (phase0, phase1) for diag(phase0, phase1) +DIAGONAL_PHASES: dict[str, tuple[complex, complex]] = { + "z": (1.0, -1.0), + "s": (1.0, 1j), + "t": (1.0, np.exp(1j * np.pi / 4)), + "sdg": (1.0, -1j), + "tdg": (1.0, np.exp(-1j * np.pi / 4)), + "id": (1.0, 1.0), +} + +# Controlled diagonal phases: gate_name -> phase (applied when control=1 AND target=1) +CONTROLLED_DIAGONAL_PHASES: dict[str, complex] = { + "cz": -1.0, +} + +# Integer opcodes for preprocessed instructions +_OP_SINGLE = 0 +_OP_CONTROLLED = 1 +_OP_DIAGONAL = 2 +_OP_CTRL_DIAGONAL = 3 +_OP_TWO_QUBIT = 4 + +# Binary/unary operator maps for expression evaluation +_BINARY_OPS = { + BinaryOperator["+"]: lambda a, b: a + b, + BinaryOperator["-"]: lambda a, b: a - b, + BinaryOperator["*"]: lambda a, b: a * b, + BinaryOperator["/"]: lambda a, b: a / b, + BinaryOperator["**"]: lambda a, b: a**b, +} + +_UNARY_OPS = { + UnaryOperator["-"]: lambda a: -a, +} + + +def _try_eval_expression(expr) -> float | None: + """Try to evaluate an AST expression to a float value.""" + if isinstance(expr, (IntegerLiteral, FloatLiteral)): + return float(expr.value) + if isinstance(expr, Identifier): + if expr.name == "pi": + return np.pi + if expr.name == "tau": + return 2 * np.pi + if expr.name == "euler": + return np.e + return None + if isinstance(expr, BinaryExpression): + lhs = _try_eval_expression(expr.lhs) + rhs = _try_eval_expression(expr.rhs) + if lhs is None or rhs is None: + return None + op_fn = _BINARY_OPS.get(expr.op) + if op_fn is not None: + return op_fn(lhs, rhs) + return None + if isinstance(expr, UnaryExpression): + operand = _try_eval_expression(expr.expression) + if operand is None: + return None + op_fn = _UNARY_OPS.get(expr.op) + if op_fn is not None: + return op_fn(operand) + return None + return None + + +def _extract_params(statement): + """Extract float parameters from a QuantumGate's arguments.""" + params = [] + for arg in statement.arguments: + val = _try_eval_expression(arg) + if val is not None: + params.append(val) + return params + + +def _preprocess(program, num_qubits): + """Walk the AST once, producing packed numpy arrays with inline gate fusion.""" + opcodes_list = [] + targets_list = [] + controls_list = [] + gate_params_list = [] # 4 complex per instruction (2x2 gate entries) + diag_phases_list = [] # 2 complex per instruction (phase0, phase1) + two_qubit_gates_list = [] # variable: 16 entries per two-qubit gate + two_qubit_offsets_list = [] # offset into two_qubit_gates per instruction + + _zero4 = [0j, 0j, 0j, 0j] + _zero2 = [0j, 0j] + tq_offset = 0 + + # Fusion state: pending accumulated 2x2 matrix per target qubit + pending = {} # target -> np.ndarray (2x2) + + def _flush_pending(target): + if target not in pending: + return + mat = pending.pop(target) + opcodes_list.append(_OP_SINGLE) + targets_list.append(target) + controls_list.append(-1) + gate_params_list.extend(mat.ravel()) + diag_phases_list.extend(_zero2) + two_qubit_offsets_list.append(-1) + + def _flush_all(): + for t in list(pending.keys()): + _flush_pending(t) + + def _accumulate(target, mat_2x2): + if target in pending: + pending[target] = mat_2x2 @ pending[target] + else: + pending[target] = mat_2x2 + + # Choose statement source: unrolled AST if available, else original program + statements = ( + program._unrolled_ast.statements + if len(program._unrolled_ast.statements) > 0 + else program.original_program.statements + ) + + for statement in statements: + if not isinstance(statement, QuantumGate): + continue + + gate_name = statement.name.name + params = _extract_params(statement) + + if len(statement.qubits) == 1: + target = statement.qubits[0].indices[0][0].value + + if gate_name in DIAGONAL_PHASES: + phase0, phase1 = DIAGONAL_PHASES[gate_name] + mat = np.array([[phase0, 0], [0, phase1]], dtype=np.complex128) + _accumulate(target, mat) + elif gate_name == "rz" and len(params) == 1: + theta = params[0] + phase0 = np.exp(-1j * theta / 2) + phase1 = np.exp(1j * theta / 2) + mat = np.array([[phase0, 0], [0, phase1]], dtype=np.complex128) + _accumulate(target, mat) + elif gate_name in NON_PARAMETERIZED_GATES: + mat = NON_PARAMETERIZED_GATES[gate_name] + _accumulate(target, mat) + elif gate_name in PARAMETERIZED_GATES: + gate_fn = PARAMETERIZED_GATES[gate_name] + required_params = gate_fn.__code__.co_argcount + if len(params) != required_params: + raise ValueError(f"Gate {gate_name} requires {required_params} parameter(s).") + mat = gate_fn(*params) + _accumulate(target, mat) + else: + raise ValueError( + f"Gate '{gate_name}' not supported by simulator. " + f"Call module.unroll() first." + ) + + elif len(statement.qubits) == 2: + target = statement.qubits[1].indices[0][0].value + control = statement.qubits[0].indices[0][0].value + + # Flush any pending single-qubit gates on affected qubits + _flush_pending(target) + _flush_pending(control) + + if gate_name == "swap": + flat = GATE_CACHE["swap"] + opcodes_list.append(_OP_TWO_QUBIT) + targets_list.append(target) + controls_list.append(control) + gate_params_list.extend(_zero4) + diag_phases_list.extend(_zero2) + two_qubit_offsets_list.append(tq_offset) + two_qubit_gates_list.extend(flat) + tq_offset += 16 + elif gate_name in CONTROLLED_DIAGONAL_PHASES: + phase = CONTROLLED_DIAGONAL_PHASES[gate_name] + opcodes_list.append(_OP_CTRL_DIAGONAL) + targets_list.append(target) + controls_list.append(control) + gate_params_list.extend(_zero4) + diag_phases_list.extend([phase, 0j]) + two_qubit_offsets_list.append(-1) + elif gate_name == "crz" and len(params) == 1: + theta = params[0] + sub_unitary = rz(theta) + flat = sub_unitary.ravel() + opcodes_list.append(_OP_CONTROLLED) + targets_list.append(target) + controls_list.append(control) + gate_params_list.extend(flat) + diag_phases_list.extend(_zero2) + two_qubit_offsets_list.append(-1) + elif gate_name in CONTROLLED_GATE_SUB_UNITARIES: + flat = GATE_CACHE[gate_name] + opcodes_list.append(_OP_CONTROLLED) + targets_list.append(target) + controls_list.append(control) + gate_params_list.extend(flat) + diag_phases_list.extend(_zero2) + two_qubit_offsets_list.append(-1) + else: + raise ValueError( + f"Gate '{gate_name}' not supported by simulator. " + f"Call module.unroll() first." + ) + + # Flush remaining pending single-qubit gates + _flush_all() + + n = len(opcodes_list) + if n == 0: + return n, None, None, None, None, None, None, None + + opcodes = np.array(opcodes_list, dtype=np.int32) + targets = np.array(targets_list, dtype=np.int32) + controls = np.array(controls_list, dtype=np.int32) + gate_params = np.ascontiguousarray(np.array(gate_params_list, dtype=np.complex128)) + diag_phases = np.ascontiguousarray(np.array(diag_phases_list, dtype=np.complex128)) + two_qubit_offsets = np.array(two_qubit_offsets_list, dtype=np.int32) + if two_qubit_gates_list: + two_qubit_gates = np.ascontiguousarray( + np.array(two_qubit_gates_list, dtype=np.complex128) + ) + else: + two_qubit_gates = np.zeros(1, dtype=np.complex128) + + return n, opcodes, targets, controls, gate_params, diag_phases, two_qubit_offsets, two_qubit_gates + @dataclass(frozen=True) class SimulatorResult: @@ -123,84 +363,14 @@ def __init__(self, seed: None | int = None): """ self._rng = np.random.default_rng(seed) - def _create_statevector(self, num_qubits: int) -> sparse.csr_matrix: - statevector = sparse.lil_matrix((1, 2**num_qubits), dtype=complex) - statevector[0, 0] = 1.0 - return statevector.tocsr() - - def _apply_gate( - self, - gate_name: str, - target_qubit: int, - control_qubit: int | None, - num_qubits: int, - params: list[float | int] | None, - statevector: sparse.csr_matrix, - ) -> sparse.csr_matrix: - if gate_name in PARAMETERIZED_GATES: - required_params = PARAMETERIZED_GATES[gate_name].__code__.co_argcount - if not params or len(params) != required_params: - raise ValueError(f"Gate {gate_name} requires {required_params} parameter(s).") - gate = PARAMETERIZED_GATES[gate_name](*params) - elif gate_name in NON_PARAMETERIZED_GATES: - gate = NON_PARAMETERIZED_GATES[gate_name] - else: - raise ValueError(f"Gate {gate_name} not supported") - - if target_qubit < 0 or target_qubit >= num_qubits: - raise ValueError(f"Invalid target qubit: {target_qubit}") - - full_operator = sparse.lil_matrix((2**num_qubits, 2**num_qubits), dtype=complex) - - if control_qubit is not None: - # Two-qubit gate - if control_qubit < 0 or control_qubit >= num_qubits: - raise ValueError(f"Invalid control qubit: {control_qubit}") - - for i in range(2**num_qubits): - if gate_name == "swap": - control, target = sorted((control_qubit, target_qubit)) - bit_c = (i >> control) & 1 - bit_t = (i >> target) & 1 - if bit_c != bit_t: # If control and target don't match - j = i ^ (1 << target) - # j = i ^ ((1 << control) | (1 << target)) # Flip both bits to swap states - full_operator[i, j] = 1.0 # Set off-diagonal element - else: - full_operator[i, i] = 1.0 # Set diagonal element - else: - if (i >> control_qubit) & 1: - # If the control qubit is |1>, flip the target qubit - j = i ^ (1 << target_qubit) # XOR to flip the target qubit - full_operator[i, j] = 1.0 # Apply CX gate - else: - full_operator[i, i] = 1.0 # Apply Identity - else: - # Single-qubit gate - for i in range(2**num_qubits): - if gate_name == "ry": - if (i & (1 << target_qubit)) == 0: - i1 = i - i0 = i1 ^ (1 << target_qubit) - full_operator[i0, i0] = gate[0, 0] - full_operator[i0, i1] = gate[0, 1] - full_operator[i1, i0] = gate[1, 0] - full_operator[i1, i1] = gate[1, 1] - elif (i & (1 << target_qubit)) != 0: - i1 = i - i0 = i1 ^ (1 << target_qubit) - full_operator[i0, i0] = gate[0, 0] - full_operator[i0, i1] = gate[0, 1] - full_operator[i1, i0] = gate[1, 0] - full_operator[i1, i1] = gate[1, 1] - - # Convert to CSR format for efficient multiplication - full_operator = full_operator.tocsr() - return statevector.dot(full_operator) - def run(self, program: QasmModule | str, shots: int = 1) -> SimulatorResult: """Run the statevector simulator. + For QasmModule input, the module is used as-is. Call module.unroll() + and module.remove_idle_qubits() beforehand if needed. + + For string input, loads/unrolls/removes idle qubits automatically. + Args: program (QasmModule | str): The program to simulate. shots (int): The number of shots to simulate. Defaults to 1. @@ -214,36 +384,21 @@ def run(self, program: QasmModule | str, shots: int = 1) -> SimulatorResult: """ if isinstance(program, str): program = loads(program) - - program.unroll() - program.remove_idle_qubits() + program.unroll() + program.remove_idle_qubits() num_qubits = program.num_qubits - statevector = self._create_statevector(num_qubits) - - for statement in program._unrolled_ast.statements: - if isinstance(statement, QuantumGate): - params = [arg.value for arg in statement.arguments if hasattr(arg, "value")] - if len(statement.qubits) == 1: - statevector = self._apply_gate( - statement.name.name, - statement.qubits[0].indices[0][0].value, - None, - num_qubits, - params, - statevector, - ) - elif len(statement.qubits) == 2: - statevector = self._apply_gate( - statement.name.name, - statement.qubits[1].indices[0][0].value, - statement.qubits[0].indices[0][0].value, - num_qubits, - params, - statevector, - ) - - sv = statevector.toarray()[0] + sv = np.zeros(2**num_qubits, dtype=np.complex128) + sv[0] = 1.0 + + n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = \ + _preprocess(program, num_qubits) + + if n > 0: + apply_circuit( + sv, num_qubits, opcodes, targets, controls, + gate_params, diag_phases, tq_offsets, tq_gates, n, + ) if shots < 0: raise ValueError("Shots must be greater than or equal to 0.") diff --git a/tests/test_perf_regression.py b/tests/test_perf_regression.py new file mode 100644 index 00000000..03c926f2 --- /dev/null +++ b/tests/test_perf_regression.py @@ -0,0 +1,183 @@ +# Copyright 2025 qBraid +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# pylint: disable=redefined-outer-name + +""" +Performance regression tests for the PyQASM statevector simulator. + +These tests enforce time budgets to catch performance regressions. Each test +runs the simulator multiple times and checks that the median execution time +stays within a generous upper bound (3x the baseline measured on Apple Silicon). + +Run with: pytest tests/test_perf_regression.py -v +Skip in CI: pytest -m "not benchmark" + +Time budgets are intentionally loose (3x baseline) to avoid flakiness on +different hardware. The goal is catching order-of-magnitude regressions, +not enforcing tight timings. + +Baselines (Apple Silicon M-series, March 2026): + Random 16q/200d: ~24 ms + Random 20q/300d: ~330 ms + Random 22q/400d: ~1625 ms + QFT 10q: ~27 ms + QFT 14q: ~58 ms +""" + +import random +import time + +import numpy as np +import pytest + +from pyqasm import loads as pyqasm_loads +from pyqasm.simulator.statevector import Simulator + +SINGLE_QUBIT_GATES = ["h", "x", "y", "z", "s", "t", "rx(1.0)", "ry(0.5)", "rz(0.3)"] +TWO_QUBIT_GATES = ["cx", "cy", "cz", "swap"] + +N_REPEATS = 5 +BUDGET_MULTIPLIER = 3 # allow 3x baseline for portability across hardware + + +def generate_random_qasm(num_qubits: int, depth: int, seed: int = 42) -> str: + rng = random.Random(seed) + lines = [ + "OPENQASM 3;", + 'include "stdgates.inc";', + f"qubit[{num_qubits}] q;", + ] + for _ in range(depth): + if num_qubits >= 2 and rng.random() < 0.4: + gate = rng.choice(TWO_QUBIT_GATES) + q0, q1 = rng.sample(range(num_qubits), 2) + lines.append(f"{gate} q[{q0}], q[{q1}];") + else: + gate = rng.choice(SINGLE_QUBIT_GATES) + q = rng.randint(0, num_qubits - 1) + lines.append(f"{gate} q[{q}];") + return "\n".join(lines) + + +def generate_qft_qasm(num_qubits: int) -> str: + lines = [ + "OPENQASM 3;", + 'include "stdgates.inc";', + f"qubit[{num_qubits}] q;", + ] + for i in range(num_qubits): + lines.append(f"h q[{i}];") + for j in range(i + 1, num_qubits): + k = j - i + angle = f"pi/{2**k}" + lines.append(f"crz({angle}) q[{j}], q[{i}];") + for i in range(num_qubits // 2): + lines.append(f"swap q[{i}], q[{num_qubits - 1 - i}];") + return "\n".join(lines) + + +def median_sim_time(qasm: str, sim: Simulator, n_repeats: int = N_REPEATS) -> float: + """Return the median wall-clock time (seconds) of sim.run() over n_repeats.""" + module = pyqasm_loads(qasm) + module.unroll() + module.remove_idle_qubits() + times = [] + for _ in range(n_repeats): + start = time.perf_counter() + sim.run(module, shots=0) + times.append(time.perf_counter() - start) + return float(np.median(times)) + + +@pytest.fixture +def sim(): + return Simulator(seed=0) + + +# --------------------------------------------------------------------------- +# Random circuit performance tests +# --------------------------------------------------------------------------- + +@pytest.mark.benchmark +@pytest.mark.parametrize( + "num_qubits, depth, baseline_ms", + [ + (16, 200, 24), + (20, 300, 330), + ], + ids=["random-16q", "random-20q"], +) +def test_random_circuit_perf(sim, num_qubits, depth, baseline_ms): + """Median simulation time must stay within budget for random circuits.""" + qasm = generate_random_qasm(num_qubits, depth) + elapsed = median_sim_time(qasm, sim) + budget_ms = baseline_ms * BUDGET_MULTIPLIER + elapsed_ms = elapsed * 1000 + assert elapsed_ms < budget_ms, ( + f"Random {num_qubits}q/{depth}d: {elapsed_ms:.1f} ms exceeded " + f"budget {budget_ms:.0f} ms (baseline {baseline_ms} ms x{BUDGET_MULTIPLIER})" + ) + + +# --------------------------------------------------------------------------- +# QFT circuit performance tests +# --------------------------------------------------------------------------- + +@pytest.mark.benchmark +@pytest.mark.parametrize( + "num_qubits, baseline_ms", + [ + (10, 27), + (14, 58), + ], + ids=["qft-10q", "qft-14q"], +) +def test_qft_circuit_perf(sim, num_qubits, baseline_ms): + """Median simulation time must stay within budget for QFT circuits.""" + qasm = generate_qft_qasm(num_qubits) + elapsed = median_sim_time(qasm, sim) + budget_ms = baseline_ms * BUDGET_MULTIPLIER + elapsed_ms = elapsed * 1000 + assert elapsed_ms < budget_ms, ( + f"QFT {num_qubits}q: {elapsed_ms:.1f} ms exceeded " + f"budget {budget_ms:.0f} ms (baseline {baseline_ms} ms x{BUDGET_MULTIPLIER})" + ) + + +# --------------------------------------------------------------------------- +# Scaling sanity check: ensure O(2^n) per gate, not worse +# --------------------------------------------------------------------------- + +@pytest.mark.benchmark +def test_scaling_not_superexponential(sim): + """Verify that doubling qubits roughly doubles per-gate time (not worse). + + Compares 14q vs 16q random circuits with the same gate count. The ratio + of per-gate times should be near 4x (since state size quadruples with +2 + qubits). We allow up to 8x to account for cache effects and noise. + """ + depth = 150 + qasm_14 = generate_random_qasm(14, depth) + qasm_16 = generate_random_qasm(16, depth) + + t14 = median_sim_time(qasm_14, sim) + t16 = median_sim_time(qasm_16, sim) + + ratio = t16 / t14 + # +2 qubits => 4x state size => expect ~4x time. Allow up to 8x. + assert ratio < 8.0, ( + f"Scaling ratio 16q/14q = {ratio:.1f}x, expected <8x " + f"(14q={t14*1000:.1f}ms, 16q={t16*1000:.1f}ms)" + ) diff --git a/tests/test_sv_sim.py b/tests/test_sv_sim.py index 65866cb8..d9b92263 100644 --- a/tests/test_sv_sim.py +++ b/tests/test_sv_sim.py @@ -1,12 +1,16 @@ -# Copyright (C) 2025 qBraid +# Copyright 2025 qBraid # -# This file is part of PyQASM +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at # -# PyQASM is free software released under the GNU General Public License v3 -# or later. You can redistribute and/or modify it under the terms of the GPL v3. -# See the LICENSE file in the project root or . +# http://www.apache.org/licenses/LICENSE-2.0 # -# THERE IS NO WARRANTY for PyQASM, as per Section 15 of the GPL v3. +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. # pylint: disable=redefined-outer-name @@ -120,15 +124,15 @@ def pyqasm_simulator(): """, "Identity gate", ), - # ( - # """ - # OPENQASM 3; - # include "stdgates.inc"; - # qubit[1] q; - # u3(0,0,0) q[0]; - # """, - # "U3 gate", - # ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[1] q; + u3(1.0, 0.5, 0.3) q[0]; + """, + "U3 gate (global phase)", + ), ( """ OPENQASM 3; @@ -155,6 +159,49 @@ def pyqasm_simulator(): """, "CX gate", ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + x q[0]; + x q[1]; + cy q[0], q[1]; + """, + "CY on |11>", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + x q[0]; + x q[1]; + cz q[0], q[1]; + """, + "CZ on |11>", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + x q[1]; + swap q[0], q[1]; + """, + "SWAP on |01>", + ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[3] q; + x q[0]; + id q[1]; + id q[2]; + """, + "X on qubit 0 of 3-qubit system", + ), ( """ OPENQASM 3; @@ -182,6 +229,16 @@ def pyqasm_simulator(): """, "Swap gate", ), + ( + """ + OPENQASM 3; + include "stdgates.inc"; + qubit[2] q; + h q[0]; + crz(pi/4) q[0], q[1]; + """, + "CRZ gate", + ), ( """ OPENQASM 3; @@ -241,15 +298,53 @@ def test_simulator_sv_results(qasm, description, aer_simulator, pyqasm_simulator """Test PyQASM simulator by comparing SV results against the Qiskit Aer simulator.""" circuit = loads(qasm) circuit.save_statevector() - compiled_circuit = transpile(circuit, aer_simulator) + compiled_circuit = transpile(circuit, aer_simulator, optimization_level=0) result = aer_simulator.run(compiled_circuit).result() sv_qiskit = result.get_statevector(compiled_circuit) sv_expected = np.asarray(sv_qiskit) result = pyqasm_simulator.run(qasm, shots=1000) - assert np.allclose(result.final_statevector, sv_expected), ( + sv_actual = result.final_statevector + if "global phase" in description: + # Compare up to global phase: find first nonzero element and normalize + idx = np.argmax(np.abs(sv_expected) > 1e-10) + phase = sv_actual[idx] / sv_expected[idx] + sv_actual = sv_actual / phase + + assert np.allclose(sv_actual, sv_expected), ( f"Test failed for: {description}\n" f"PyQASM simulator statevector: {result.final_statevector}\n" f"Expected statevector: {sv_expected}" ) + + +def test_simulator_large_circuit(aer_simulator, pyqasm_simulator): + """Test PyQASM simulator on an 8-qubit circuit.""" + qasm = """ + OPENQASM 3; + include "stdgates.inc"; + qubit[8] q; + h q[0]; + cx q[0], q[1]; + cx q[1], q[2]; + cx q[2], q[3]; + h q[4]; + cx q[4], q[5]; + cx q[5], q[6]; + cx q[6], q[7]; + swap q[3], q[4]; + """ + circuit = loads(qasm) + circuit.save_statevector() + compiled_circuit = transpile(circuit, aer_simulator, optimization_level=0) + result_qiskit = aer_simulator.run(compiled_circuit).result() + sv_expected = np.asarray(result_qiskit.get_statevector(compiled_circuit)) + + result = pyqasm_simulator.run(qasm, shots=0) + + assert np.allclose(result.final_statevector, sv_expected), ( + f"Test failed for 8-qubit circuit\n" + f"PyQASM: {result.final_statevector}\n" + f"Expected: {sv_expected}" + ) From b7bbe46c3be29888d4b5caf696fdd5839360ac22 Mon Sep 17 00:00:00 2001 From: "Kenny J. Heitritter" Date: Tue, 26 May 2026 09:25:00 -0500 Subject: [PATCH 10/16] Optimize statevector preprocessing with evolved no-cache path Port the non-cache Run 06 AlphaEvolve statevector improvements into the sv branch implementation while deliberately excluding the QASM-string instruction memoization that overfit the AE repeated-timing harness. The simulator still preprocesses every input on each run call. The speedup comes from reducing Python overhead in that preprocessing path: - add optional numba-jitted helpers for small rotation/diagonal utilities - hoist matrix constants and phase constants to module scope - keep pending diagonal one-qubit gates as phase pairs during fusion - flush diagonal gates directly to the diagonal Cython kernel - preallocate packed instruction arrays instead of growing Python lists - decompose SWAP through the optimized controlled-X kernel path - preserve diagonal pending gates across CZ/CRZ because they commute - keep the conservative capacity bound needed for swap expansion and pending-gate flushes This is the honest non-cache improvement: no _PROGRAM_INSTRUCTION_CACHE, no cross-call memoization, and no reliance on repeated identical QASM strings. Add a simulation extra for installing numba; the code falls back to pure Python helpers when numba is absent. --- pyproject.toml | 3 +- src/pyqasm/simulator/statevector.py | 465 +++++++++++++++++++--------- 2 files changed, 329 insertions(+), 139 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index c4a4cb4f..5fba2937 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -45,6 +45,7 @@ test = ["pytest", "pytest-cov", "pytest-mpl", "pillow<12.2.0", "matplotlib", "ta lint = ["black", "isort>=6.0.0", "pylint", "mypy", "qbraid-cli>=0.10.2"] docs = ["sphinx>=7.3.7,<8.3.0", "sphinx-autodoc-typehints>=1.24,<3.2", "sphinx-rtd-theme>=2.0.0,<4.0.0", "docutils<0.23", "sphinx-copybutton"] visualization = ["pillow<12.2.0", "matplotlib", "tabulate"] +simulation = ["numba>=0.59"] pulse = ["openpulse>=1.0.1"] [tool.setuptools.package-data] @@ -95,4 +96,4 @@ exclude_lines = [ "def __getattr__", "def __dir__", "# pragma: no cover" -] \ No newline at end of file +] diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index fdc0bd56..6eb9db33 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -36,40 +36,103 @@ from pyqasm.accelerate.sv_sim import apply_circuit from pyqasm.modules.base import QasmModule +try: + import numba as nb +except ImportError: # pragma: no cover - performance-only optional dependency + class _NumbaCompat: + """Fallback decorator shim when numba is not installed.""" + + @staticmethod + def njit(*args, **kwargs): # noqa: ARG004 + if args and callable(args[0]): + return args[0] + + def decorator(fn): + return fn + + return decorator + + nb = _NumbaCompat() + + +_COMPLEX_ZERO = 0j +_PI = np.pi +_E = np.e +_T_PHASE = np.exp(1j * _PI / 4) +_TDG_PHASE = np.exp(-1j * _PI / 4) -def rz(theta: float) -> np.ndarray: - """Parameterized Rz gate.""" - return np.array([[np.exp(-1j * theta / 2), 0], [0, np.exp(1j * theta / 2)]], dtype=complex) +@nb.njit(cache=True, nogil=True, fastmath=True) +def _rz_phases(theta: float) -> tuple[complex, complex]: + """Parameterized Rz gate as diagonal phases.""" + half_theta = theta / 2 + return np.exp(-1j * half_theta), np.exp(1j * half_theta) + +@nb.njit(cache=True, nogil=True, fastmath=True) def ry(theta: float) -> np.ndarray: """Parameterized Ry gate.""" - return np.array( - [[np.cos(theta / 2), -np.sin(theta / 2)], [np.sin(theta / 2), np.cos(theta / 2)]], - dtype=complex, - ) + c, s = np.cos(theta / 2), np.sin(theta / 2) + mat = np.empty((2, 2), dtype=np.complex128) + mat[0, 0] = c + mat[0, 1] = -s + mat[1, 0] = s + mat[1, 1] = c + return mat +@nb.njit(cache=True, nogil=True, fastmath=True) def rx(theta: float) -> np.ndarray: """Parameterized Rx gate.""" - return np.array( - [ - [np.cos(theta / 2), -1j * np.sin(theta / 2)], - [-1j * np.sin(theta / 2), np.cos(theta / 2)], - ], - dtype=complex, - ) + c, s = np.cos(theta / 2), np.sin(theta / 2) + mat = np.empty((2, 2), dtype=np.complex128) + mat[0, 0] = c + mat[0, 1] = -1j * s + mat[1, 0] = -1j * s + mat[1, 1] = c + return mat + + +def rz(theta: float) -> np.ndarray: + """Parameterized Rz gate.""" + phase0, phase1 = _rz_phases(theta) + return _diag_to_matrix(phase0, phase1) +@nb.njit(cache=True, nogil=True, fastmath=True) def u3(theta: float, phi: float, lam: float) -> np.ndarray: """Parameterized U3 gate (generic single-qubit rotation).""" - return np.array( - [ - [np.cos(theta / 2), -np.exp(1j * lam) * np.sin(theta / 2)], - [np.exp(1j * phi) * np.sin(theta / 2), np.exp(1j * (phi + lam)) * np.cos(theta / 2)], - ], - dtype=complex, - ) + c, s = np.cos(theta / 2), np.sin(theta / 2) + exp_phi = np.exp(1j * phi) + exp_lam = np.exp(1j * lam) + exp_philam = np.exp(1j * (phi + lam)) + mat = np.empty((2, 2), dtype=np.complex128) + mat[0, 0] = c + mat[0, 1] = -exp_lam * s + mat[1, 0] = exp_phi * s + mat[1, 1] = exp_philam * c + return mat + + +@nb.njit(cache=True, nogil=True, fastmath=True) +def _diag_to_matrix(phase0: complex, phase1: complex) -> np.ndarray: + """Convert diagonal phases to a 2x2 matrix.""" + mat = np.zeros((2, 2), dtype=np.complex128) + mat[0, 0] = phase0 + mat[1, 1] = phase1 + return mat + + +@nb.njit(cache=True, nogil=True, fastmath=True) +def _is_diagonal_matrix(mat: np.ndarray, tol: float = 1e-10) -> bool: + """Return whether a 2x2 matrix is diagonal within tolerance.""" + return (np.abs(mat[0, 1]) < tol) and (np.abs(mat[1, 0]) < tol) + + +@nb.njit(cache=True, nogil=True, fastmath=True) +def _diagonal_phases_from_matrix(mat: np.ndarray) -> tuple[complex, complex]: + """Extract diagonal phases from a diagonal 2x2 matrix.""" + return mat[0, 0], mat[1, 1] PARAMETERIZED_GATES = { @@ -79,23 +142,53 @@ def u3(theta: float, phi: float, lam: float) -> np.ndarray: "u3": u3, } +_CONST_X = np.array([[0, 1], [1, 0]], dtype=np.complex128) +_CONST_Y = np.array([[0, -1j], [1j, 0]], dtype=np.complex128) +_CONST_Z = np.array([[1, 0], [0, -1]], dtype=np.complex128) +_CONST_H = np.array([[1, 1], [1, -1]], dtype=np.complex128) / np.sqrt(2) +_CONST_ID = np.eye(2, dtype=np.complex128) +_CONST_S = np.array([[1, 0], [0, 1j]], dtype=np.complex128) +_CONST_T = np.array([[1, 0], [0, _T_PHASE]], dtype=np.complex128) +_CONST_SDG = np.array([[1, 0], [0, -1j]], dtype=np.complex128) +_CONST_TDG = np.array([[1, 0], [0, _TDG_PHASE]], dtype=np.complex128) +_CONST_SWAP = np.array( + [[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, 1]], dtype=np.complex128 +) + NON_PARAMETERIZED_GATES: dict[str, np.ndarray] = { - "x": np.array([[0, 1], [1, 0]], dtype=complex), - "y": np.array([[0, -1j], [1j, 0]], dtype=complex), - "z": np.array([[1, 0], [0, -1]], dtype=complex), - "h": np.array([[1, 1], [1, -1]], dtype=complex) / np.sqrt(2), - "id": np.array([[1, 0], [0, 1]], dtype=complex), - "s": np.array([[1, 0], [0, 1j]], dtype=complex), - "t": np.array([[1, 0], [0, np.exp(1j * np.pi / 4)]], dtype=complex), - "sdg": np.array([[1, 0], [0, -1j]], dtype=complex), - "tdg": np.array([[1, 0], [0, np.exp(-1j * np.pi / 4)]], dtype=complex), - "swap": np.array([[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, 1]], dtype=complex), + "x": _CONST_X, + "y": _CONST_Y, + "z": _CONST_Z, + "h": _CONST_H, + "id": _CONST_ID, + "s": _CONST_S, + "t": _CONST_T, + "sdg": _CONST_SDG, + "tdg": _CONST_TDG, + "swap": _CONST_SWAP, +} + +# Fast-path single-qubit gate properties. Diagonal gates are kept as phase +# pairs while fusing so they can flush directly to the diagonal Cython kernel +# instead of materializing a 2x2 matrix. +NON_PARAMETERIZED_GATE_PROPS: dict[ + str, tuple[bool, complex, complex, np.ndarray | None] +] = { + "x": (False, _COMPLEX_ZERO, _COMPLEX_ZERO, _CONST_X), + "y": (False, _COMPLEX_ZERO, _COMPLEX_ZERO, _CONST_Y), + "z": (True, 1.0 + _COMPLEX_ZERO, -1.0 + _COMPLEX_ZERO, None), + "h": (False, _COMPLEX_ZERO, _COMPLEX_ZERO, _CONST_H), + "id": (True, 1.0 + _COMPLEX_ZERO, 1.0 + _COMPLEX_ZERO, None), + "s": (True, 1.0 + _COMPLEX_ZERO, 1j, None), + "t": (True, 1.0 + _COMPLEX_ZERO, _T_PHASE, None), + "sdg": (True, 1.0 + _COMPLEX_ZERO, -1j, None), + "tdg": (True, 1.0 + _COMPLEX_ZERO, _TDG_PHASE, None), } CONTROLLED_GATE_SUB_UNITARIES: dict[str, np.ndarray] = { - "cx": np.array([[0, 1], [1, 0]], dtype=complex), - "cy": np.array([[0, -1j], [1j, 0]], dtype=complex), - "cz": np.array([[1, 0], [0, -1]], dtype=complex), + "cx": _CONST_X, + "cy": _CONST_Y, + "cz": _CONST_Z, } # Pre-flatten non-parameterized gates for Cython (contiguous 1D arrays) @@ -109,9 +202,9 @@ def u3(theta: float, phi: float, lam: float) -> np.ndarray: DIAGONAL_PHASES: dict[str, tuple[complex, complex]] = { "z": (1.0, -1.0), "s": (1.0, 1j), - "t": (1.0, np.exp(1j * np.pi / 4)), + "t": (1.0, _T_PHASE), "sdg": (1.0, -1j), - "tdg": (1.0, np.exp(-1j * np.pi / 4)), + "tdg": (1.0, _TDG_PHASE), "id": (1.0, 1.0), } @@ -147,11 +240,11 @@ def _try_eval_expression(expr) -> float | None: return float(expr.value) if isinstance(expr, Identifier): if expr.name == "pi": - return np.pi + return _PI if expr.name == "tau": - return 2 * np.pi + return 2 * _PI if expr.name == "euler": - return np.e + return _E return None if isinstance(expr, BinaryExpression): lhs = _try_eval_expression(expr.lhs) @@ -184,49 +277,151 @@ def _extract_params(statement): def _preprocess(program, num_qubits): - """Walk the AST once, producing packed numpy arrays with inline gate fusion.""" - opcodes_list = [] - targets_list = [] - controls_list = [] - gate_params_list = [] # 4 complex per instruction (2x2 gate entries) - diag_phases_list = [] # 2 complex per instruction (phase0, phase1) - two_qubit_gates_list = [] # variable: 16 entries per two-qubit gate - two_qubit_offsets_list = [] # offset into two_qubit_gates per instruction - - _zero4 = [0j, 0j, 0j, 0j] - _zero2 = [0j, 0j] - tq_offset = 0 + """Walk the AST once, producing packed numpy arrays with inline gate fusion. - # Fusion state: pending accumulated 2x2 matrix per target qubit - pending = {} # target -> np.ndarray (2x2) + This keeps the existing no-cache semantics: every call preprocesses its + input program. The speedup comes from avoiding Python list growth, + preserving diagonal gates as phase pairs while fusing, and using optional + numba-compiled helpers for small matrix/phase constructors. + """ + statements = ( + program._unrolled_ast.statements + if len(program._unrolled_ast.statements) > 0 + else program.original_program.statements + ) + + # Conservative bound: pending one-qubit flushes plus SWAP expansion can + # emit more instructions than source statements. The bound is deliberately + # simple and over-allocates a little to avoid dynamic list growth. + max_instructions = max(1, len(statements) * 4 + num_qubits) + opcodes = np.empty(max_instructions, dtype=np.int32) + targets = np.empty(max_instructions, dtype=np.int32) + controls = np.empty(max_instructions, dtype=np.int32) + gate_params = np.empty(max_instructions * 4, dtype=np.complex128) + diag_phases = np.empty(max_instructions * 2, dtype=np.complex128) + two_qubit_offsets = np.empty(max_instructions, dtype=np.int32) + two_qubit_gates = np.empty(max_instructions * 16, dtype=np.complex128) + + zero4 = np.zeros(4, dtype=np.complex128) + zero2 = np.zeros(2, dtype=np.complex128) + instruction_idx = 0 + tq_offset = 0 - def _flush_pending(target): + # target -> (is_diagonal, phase0, phase1, matrix) + pending: dict[int, tuple[bool, complex, complex, np.ndarray | None]] = {} + + def _write_single(target: int, mat: np.ndarray): + nonlocal instruction_idx + opcodes[instruction_idx] = _OP_SINGLE + targets[instruction_idx] = target + controls[instruction_idx] = -1 + gate_params[instruction_idx * 4 : instruction_idx * 4 + 4] = mat.ravel() + diag_phases[instruction_idx * 2 : instruction_idx * 2 + 2] = zero2 + two_qubit_offsets[instruction_idx] = -1 + instruction_idx += 1 + + def _write_diagonal(target: int, phase0: complex, phase1: complex): + nonlocal instruction_idx + opcodes[instruction_idx] = _OP_DIAGONAL + targets[instruction_idx] = target + controls[instruction_idx] = -1 + gate_params[instruction_idx * 4 : instruction_idx * 4 + 4] = zero4 + diag_phases[instruction_idx * 2 : instruction_idx * 2 + 2] = (phase0, phase1) + two_qubit_offsets[instruction_idx] = -1 + instruction_idx += 1 + + def _write_controlled(control: int, target: int, flat: np.ndarray): + nonlocal instruction_idx + opcodes[instruction_idx] = _OP_CONTROLLED + targets[instruction_idx] = target + controls[instruction_idx] = control + gate_params[instruction_idx * 4 : instruction_idx * 4 + 4] = flat + diag_phases[instruction_idx * 2 : instruction_idx * 2 + 2] = zero2 + two_qubit_offsets[instruction_idx] = -1 + instruction_idx += 1 + + def _write_controlled_diagonal(control: int, target: int, phase: complex): + nonlocal instruction_idx + opcodes[instruction_idx] = _OP_CTRL_DIAGONAL + targets[instruction_idx] = target + controls[instruction_idx] = control + gate_params[instruction_idx * 4 : instruction_idx * 4 + 4] = zero4 + diag_phases[instruction_idx * 2 : instruction_idx * 2 + 2] = (phase, 0j) + two_qubit_offsets[instruction_idx] = -1 + instruction_idx += 1 + + def _write_two_qubit(control: int, target: int, flat: np.ndarray): + nonlocal instruction_idx, tq_offset + opcodes[instruction_idx] = _OP_TWO_QUBIT + targets[instruction_idx] = target + controls[instruction_idx] = control + gate_params[instruction_idx * 4 : instruction_idx * 4 + 4] = zero4 + diag_phases[instruction_idx * 2 : instruction_idx * 2 + 2] = zero2 + two_qubit_offsets[instruction_idx] = tq_offset + two_qubit_gates[tq_offset : tq_offset + 16] = flat + tq_offset += 16 + instruction_idx += 1 + + def _flush_pending(target: int): if target not in pending: return - mat = pending.pop(target) - opcodes_list.append(_OP_SINGLE) - targets_list.append(target) - controls_list.append(-1) - gate_params_list.extend(mat.ravel()) - diag_phases_list.extend(_zero2) - two_qubit_offsets_list.append(-1) + is_diagonal, phase0, phase1, mat = pending.pop(target) - def _flush_all(): - for t in list(pending.keys()): - _flush_pending(t) + if ( + is_diagonal + and (np.abs(phase0 - 1.0) < 1e-10) + and (np.abs(phase1 - 1.0) < 1e-10) + ): + return + if not is_diagonal and mat is not None and _is_diagonal_matrix(mat): + is_diagonal = True + phase0, phase1 = _diagonal_phases_from_matrix(mat) + mat = None - def _accumulate(target, mat_2x2): - if target in pending: - pending[target] = mat_2x2 @ pending[target] + if is_diagonal: + _write_diagonal(target, phase0, phase1) else: - pending[target] = mat_2x2 + if mat is None: + mat = _diag_to_matrix(phase0, phase1) + _write_single(target, mat) - # Choose statement source: unrolled AST if available, else original program - statements = ( - program._unrolled_ast.statements - if len(program._unrolled_ast.statements) > 0 - else program.original_program.statements - ) + def _flush_all(): + for target in list(pending.keys()): + _flush_pending(target) + + def _accumulate( + target: int, + new_is_diagonal: bool, + new_phase0: complex, + new_phase1: complex, + new_mat: np.ndarray | None, + ): + if target not in pending: + pending[target] = (new_is_diagonal, new_phase0, new_phase1, new_mat) + return + + current_is_diagonal, current_phase0, current_phase1, current_mat = pending[target] + if current_is_diagonal and new_is_diagonal: + pending[target] = ( + True, + new_phase0 * current_phase0, + new_phase1 * current_phase1, + None, + ) + return + + current_matrix = ( + _diag_to_matrix(current_phase0, current_phase1) + if current_is_diagonal + else current_mat + ) + new_matrix = _diag_to_matrix(new_phase0, new_phase1) if new_is_diagonal else new_mat + fused = new_matrix @ current_matrix + if _is_diagonal_matrix(fused): + phase0, phase1 = _diagonal_phases_from_matrix(fused) + pending[target] = (True, phase0, phase1, None) + else: + pending[target] = (False, _COMPLEX_ZERO, _COMPLEX_ZERO, fused) for statement in statements: if not isinstance(statement, QuantumGate): @@ -238,26 +433,21 @@ def _accumulate(target, mat_2x2): if len(statement.qubits) == 1: target = statement.qubits[0].indices[0][0].value - if gate_name in DIAGONAL_PHASES: - phase0, phase1 = DIAGONAL_PHASES[gate_name] - mat = np.array([[phase0, 0], [0, phase1]], dtype=np.complex128) - _accumulate(target, mat) + if gate_name in NON_PARAMETERIZED_GATE_PROPS: + is_diagonal, phase0, phase1, mat = NON_PARAMETERIZED_GATE_PROPS[gate_name] + _accumulate(target, is_diagonal, phase0, phase1, mat) elif gate_name == "rz" and len(params) == 1: - theta = params[0] - phase0 = np.exp(-1j * theta / 2) - phase1 = np.exp(1j * theta / 2) - mat = np.array([[phase0, 0], [0, phase1]], dtype=np.complex128) - _accumulate(target, mat) - elif gate_name in NON_PARAMETERIZED_GATES: - mat = NON_PARAMETERIZED_GATES[gate_name] - _accumulate(target, mat) + phase0, phase1 = _rz_phases(params[0]) + _accumulate(target, True, phase0, phase1, None) elif gate_name in PARAMETERIZED_GATES: gate_fn = PARAMETERIZED_GATES[gate_name] - required_params = gate_fn.__code__.co_argcount + required_params = 3 if gate_name == "u3" else 1 if len(params) != required_params: - raise ValueError(f"Gate {gate_name} requires {required_params} parameter(s).") + raise ValueError( + f"Gate {gate_name} requires {required_params} parameter(s)." + ) mat = gate_fn(*params) - _accumulate(target, mat) + _accumulate(target, False, _COMPLEX_ZERO, _COMPLEX_ZERO, mat) else: raise ValueError( f"Gate '{gate_name}' not supported by simulator. " @@ -268,46 +458,35 @@ def _accumulate(target, mat_2x2): target = statement.qubits[1].indices[0][0].value control = statement.qubits[0].indices[0][0].value - # Flush any pending single-qubit gates on affected qubits - _flush_pending(target) - _flush_pending(control) + # Flush pending gates only when they do not commute with the + # incoming two-qubit gate. Diagonal one-qubit gates commute with + # diagonal two-qubit gates (CZ/CRZ), so they can remain fused until + # a later non-diagonal interaction or the final flush. + for qubit in (control, target): + if qubit not in pending: + continue + is_diagonal, _, _, _ = pending[qubit] + if (not is_diagonal) or gate_name not in {"cz", "crz"}: + _flush_pending(qubit) if gate_name == "swap": - flat = GATE_CACHE["swap"] - opcodes_list.append(_OP_TWO_QUBIT) - targets_list.append(target) - controls_list.append(control) - gate_params_list.extend(_zero4) - diag_phases_list.extend(_zero2) - two_qubit_offsets_list.append(tq_offset) - two_qubit_gates_list.extend(flat) - tq_offset += 16 + # Decompose SWAP into three controlled-X instructions. This + # stays on the optimized controlled-gate kernel and avoids the + # generic 4x4 two-qubit path for this common gate. + flat = GATE_CACHE["cx"] + _write_controlled(control, target, flat) + _write_controlled(target, control, flat) + _write_controlled(control, target, flat) elif gate_name in CONTROLLED_DIAGONAL_PHASES: phase = CONTROLLED_DIAGONAL_PHASES[gate_name] - opcodes_list.append(_OP_CTRL_DIAGONAL) - targets_list.append(target) - controls_list.append(control) - gate_params_list.extend(_zero4) - diag_phases_list.extend([phase, 0j]) - two_qubit_offsets_list.append(-1) + _write_controlled_diagonal(control, target, phase) elif gate_name == "crz" and len(params) == 1: theta = params[0] - sub_unitary = rz(theta) - flat = sub_unitary.ravel() - opcodes_list.append(_OP_CONTROLLED) - targets_list.append(target) - controls_list.append(control) - gate_params_list.extend(flat) - diag_phases_list.extend(_zero2) - two_qubit_offsets_list.append(-1) + _, phase_at_11 = _rz_phases(theta) + _write_controlled_diagonal(control, target, phase_at_11) elif gate_name in CONTROLLED_GATE_SUB_UNITARIES: flat = GATE_CACHE[gate_name] - opcodes_list.append(_OP_CONTROLLED) - targets_list.append(target) - controls_list.append(control) - gate_params_list.extend(flat) - diag_phases_list.extend(_zero2) - two_qubit_offsets_list.append(-1) + _write_controlled(control, target, flat) else: raise ValueError( f"Gate '{gate_name}' not supported by simulator. " @@ -317,24 +496,25 @@ def _accumulate(target, mat_2x2): # Flush remaining pending single-qubit gates _flush_all() - n = len(opcodes_list) + n = instruction_idx if n == 0: return n, None, None, None, None, None, None, None - opcodes = np.array(opcodes_list, dtype=np.int32) - targets = np.array(targets_list, dtype=np.int32) - controls = np.array(controls_list, dtype=np.int32) - gate_params = np.ascontiguousarray(np.array(gate_params_list, dtype=np.complex128)) - diag_phases = np.ascontiguousarray(np.array(diag_phases_list, dtype=np.complex128)) - two_qubit_offsets = np.array(two_qubit_offsets_list, dtype=np.int32) - if two_qubit_gates_list: - two_qubit_gates = np.ascontiguousarray( - np.array(two_qubit_gates_list, dtype=np.complex128) - ) + if tq_offset > 0: + two_qubit_gates_trimmed = np.ascontiguousarray(two_qubit_gates[:tq_offset]) else: - two_qubit_gates = np.zeros(1, dtype=np.complex128) - - return n, opcodes, targets, controls, gate_params, diag_phases, two_qubit_offsets, two_qubit_gates + two_qubit_gates_trimmed = np.zeros(1, dtype=np.complex128) + + return ( + n, + opcodes[:n], + targets[:n], + controls[:n], + np.ascontiguousarray(gate_params[: n * 4]), + np.ascontiguousarray(diag_phases[: n * 2]), + two_qubit_offsets[:n], + two_qubit_gates_trimmed, + ) @dataclass(frozen=True) @@ -391,13 +571,22 @@ def run(self, program: QasmModule | str, shots: int = 1) -> SimulatorResult: sv = np.zeros(2**num_qubits, dtype=np.complex128) sv[0] = 1.0 - n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = \ + n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = ( _preprocess(program, num_qubits) + ) if n > 0: apply_circuit( - sv, num_qubits, opcodes, targets, controls, - gate_params, diag_phases, tq_offsets, tq_gates, n, + sv, + num_qubits, + opcodes, + targets, + controls, + gate_params, + diag_phases, + tq_offsets, + tq_gates, + n, ) if shots < 0: From 0cfd83a873516f493efa26fedd1810848c570a82 Mon Sep 17 00:00:00 2001 From: "Kenny J. Heitritter" Date: Tue, 26 May 2026 09:46:40 -0500 Subject: [PATCH 11/16] Add evolved no-cache statevector benchmark artifacts --- benchmarks/bench_evolved_no_cache.json | 183 +++++++++++++++++++ benchmarks/bench_qft_evolved_no_cache.png | Bin 0 -> 110233 bytes benchmarks/bench_random_evolved_no_cache.png | Bin 0 -> 115523 bytes 3 files changed, 183 insertions(+) create mode 100644 benchmarks/bench_evolved_no_cache.json create mode 100644 benchmarks/bench_qft_evolved_no_cache.png create mode 100644 benchmarks/bench_random_evolved_no_cache.png diff --git a/benchmarks/bench_evolved_no_cache.json b/benchmarks/bench_evolved_no_cache.json new file mode 100644 index 00000000..941d4b03 --- /dev/null +++ b/benchmarks/bench_evolved_no_cache.json @@ -0,0 +1,183 @@ +{ + "benchmark": "statevector preprocessing no-cache comparison", + "baseline": "PyQASM sv branch before evolved preprocessing commit", + "candidate": "PyQASM sv branch with evolved no-cache preprocessing", + "n_repeats": 5, + "pyqasm_num_threads": 1, + "notes": [ + "No QASM string memoization is included in the candidate.", + "Both series use pre-unrolled QasmModule inputs, matching the branch benchmark convention." + ], + "series": { + "random": [ + { + "num_qubits": 4, + "depth": 20, + "pyqasm_sv_ms": 0.06092991679906845, + "evolved_no_cache_ms": 0.06546999793499708, + "speedup": 0.9306540204807044, + "correct": true + }, + { + "num_qubits": 6, + "depth": 40, + "pyqasm_sv_ms": 0.1580890966579318, + "evolved_no_cache_ms": 0.1151899341493845, + "speedup": 1.372421104546456, + "correct": true + }, + { + "num_qubits": 8, + "depth": 60, + "pyqasm_sv_ms": 0.16204908024519682, + "evolved_no_cache_ms": 0.14194007962942123, + "speedup": 1.1416724625509327, + "correct": true + }, + { + "num_qubits": 10, + "depth": 80, + "pyqasm_sv_ms": 0.24963996838778257, + "evolved_no_cache_ms": 0.21547905635088682, + "speedup": 1.1585347208002805, + "correct": true + }, + { + "num_qubits": 12, + "depth": 100, + "pyqasm_sv_ms": 0.458328053355217, + "evolved_no_cache_ms": 0.41990901809185743, + "speedup": 1.0914937131808757, + "correct": true + }, + { + "num_qubits": 14, + "depth": 150, + "pyqasm_sv_ms": 1.5235739992931485, + "evolved_no_cache_ms": 1.3638049131259322, + "speedup": 1.117149516495739, + "correct": true + }, + { + "num_qubits": 16, + "depth": 200, + "pyqasm_sv_ms": 7.1852849796414375, + "evolved_no_cache_ms": 5.937180016189814, + "speedup": 1.210218480835721, + "correct": true + }, + { + "num_qubits": 18, + "depth": 250, + "pyqasm_sv_ms": 35.15114798210561, + "evolved_no_cache_ms": 28.548280941322446, + "speedup": 1.231287728124666, + "correct": true + }, + { + "num_qubits": 20, + "depth": 300, + "pyqasm_sv_ms": 162.53185598179698, + "evolved_no_cache_ms": 126.72401999589056, + "speedup": 1.282565499319447, + "correct": true + }, + { + "num_qubits": 22, + "depth": 400, + "pyqasm_sv_ms": 1289.0826460206881, + "evolved_no_cache_ms": 1231.460615992546, + "speedup": 1.0467916141854843, + "correct": true + } + ], + "qft": [ + { + "num_qubits": 4, + "depth": "QFT", + "pyqasm_sv_ms": 0.20883907563984394, + "evolved_no_cache_ms": 0.16430008690804243, + "speedup": 1.2710831720784765, + "correct": true + }, + { + "num_qubits": 6, + "depth": "QFT", + "pyqasm_sv_ms": 0.4983479157090187, + "evolved_no_cache_ms": 0.315018929541111, + "speedup": 1.5819618091997316, + "correct": true + }, + { + "num_qubits": 8, + "depth": "QFT", + "pyqasm_sv_ms": 0.9089269442483783, + "evolved_no_cache_ms": 0.5902479169890285, + "speedup": 1.5399070764789728, + "correct": true + }, + { + "num_qubits": 10, + "depth": "QFT", + "pyqasm_sv_ms": 1.5004950109869242, + "evolved_no_cache_ms": 1.0477059986442327, + "speedup": 1.4321718238977499, + "correct": true + }, + { + "num_qubits": 12, + "depth": "QFT", + "pyqasm_sv_ms": 2.5123610394075513, + "evolved_no_cache_ms": 1.782613922841847, + "speedup": 1.409369133279482, + "correct": true + }, + { + "num_qubits": 14, + "depth": "QFT", + "pyqasm_sv_ms": 5.448751035146415, + "evolved_no_cache_ms": 4.14173596072942, + "speedup": 1.3155718005226993, + "correct": true + }, + { + "num_qubits": 16, + "depth": "QFT", + "pyqasm_sv_ms": 18.029507948085666, + "evolved_no_cache_ms": 15.524596092291176, + "speedup": 1.1613511772482323, + "correct": true + }, + { + "num_qubits": 18, + "depth": "QFT", + "pyqasm_sv_ms": 77.3717820411548, + "evolved_no_cache_ms": 68.92851099837571, + "speedup": 1.1224931587885028, + "correct": true + }, + { + "num_qubits": 20, + "depth": "QFT", + "pyqasm_sv_ms": 382.6392919290811, + "evolved_no_cache_ms": 349.38782698009163, + "speedup": 1.0951706452866319, + "correct": true + } + ] + }, + "summary": { + "random": { + "geomean_speedup": 1.1521318658620598, + "min_speedup": 0.9306540204807044, + "max_speedup": 1.372421104546456, + "all_correct": true + }, + "qft": { + "geomean_speedup": 1.3147632402156637, + "min_speedup": 1.0951706452866319, + "max_speedup": 1.5819618091997316, + "all_correct": true + } + } +} diff --git a/benchmarks/bench_qft_evolved_no_cache.png b/benchmarks/bench_qft_evolved_no_cache.png new file mode 100644 index 0000000000000000000000000000000000000000..2dab0d2919a02af7ff7e455b528771adeb6df404 GIT binary patch literal 110233 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 z�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 literal 0 HcmV?d00001 diff --git a/benchmarks/bench_random_evolved_no_cache.png b/benchmarks/bench_random_evolved_no_cache.png new file mode 100644 index 0000000000000000000000000000000000000000..27228cc450c77bc131c9bebba3b6775202b7f184 GIT binary patch literal 115523 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 Date: Tue, 26 May 2026 10:01:12 -0500 Subject: [PATCH 12/16] Regenerate statevector benchmark plots --- benchmarks/bench_qft.png | Bin 132089 -> 130081 bytes benchmarks/bench_random.png | Bin 139227 -> 139805 bytes pyproject.toml | 1 - 3 files changed, 1 deletion(-) diff --git a/benchmarks/bench_qft.png b/benchmarks/bench_qft.png index 2cc7971cb069aa8737bf3dd8ef56a80ad4024717..78d2eb641e9fbd2678cb8649c98dd2af57e2929b 100644 GIT binary patch literal 130081 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 <2aKfkzTQUlr-1(99R9e%ZquBeUBt8`9 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∾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 diff --git a/benchmarks/bench_random.png b/benchmarks/bench_random.png index f9c4adba5eaa3871eb346c7d49baee0e1de6aedc..a783fa113df5ded9b1ece7b0271c1c2e3bf267d5 100644 GIT binary patch literal 139805 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 e_8k-6T{6ifSJo8Oa8? z6=H4+_2v`65?$=1^!dh+>De0S5y_X{|33;1VOo*0(I&QJuCPUmRgkVfNxrM-k+2Vf z_=kwz>Q;@47-q)S!=*jBZg4o}=O>oV2hpxKtx8@MU8y-bBuYEhwTucYKX|kp+@cqowfKB8!gNC9k47>I2L z$xHZ|-P`jR(Hr6l2SNe@gzNKc$&f*)vsjRRDictVOXvEHZApQj!Kq6k7bk)As69vS z4?oP6m6ah`H$&k4h+f}yZL7nOtRuJ zMDmS!utPnXhEk`@>^W7i3D2U{LS{&AGX%EM09beFnW~wh*yfBokPD8UmG|_>e|}z$ z2mz3o5|=%FXru||ajN%Q(M*Jl@7AmQgISAwrW?4@Uk{Px_mA`NImlI$b*R_o(DQ!= z?BbzeW}^9sUWp_nea5WyQePDl5?Q`~G{EwthVYTS8-LI2bN^pe$=NX<$h;=)J{LyJ zeM`w8TEZeKPe%vo!XsRKU{Ja@Dgqq>s?i0@Rnptrd;FT2nfb>D1tMT|F}`#142#Ve z*p0ugBF*+T1C$p*efJG|sHNGn5<~Ik6R4CQjF&?(FeiI+SPri|d6$eeIeOHD_%*N9_@HZ@x(l#r3w|;W z3XtHgg#SA8aIV^G|FT%#Vz+EyOW}z0Qn)SS0CfVGd+*o)ebmLcXIPqM~sQwmi{H5Wr2wP?eK2i2^DjPm#&PNy4@j{ofZv_o45YA$> ztC4_k7Q<^G)ribhR6RIp>}PmTzxqg#t58X?E=q5inQf5{k@KzO$Cg1o5xhL7)0V5T zrpgOX)#oHEy~(tPwOf;qbmejWxx07+)Ym*vM7IN4n{7Y;+Wf@JOpM6^ua%y}>eE?| zQinCg(40`gy?RdQMgvefFc5FBZ)Qzhi|zq{_H@Va#2Jw})qj*8vt|2@hl`pZwj;$` z>UB4;rct*vi|^||1BJ;OE*kC@tE`agn?9^#&=`&NV4L!Xzk%#In%`m7aI8r0EsyoRvhs2cpr3pDu9N)Wp60jKhbfx}u3*RZt*sRR?0fROOmFw{9q8{3eyPxhI+gR^IR_#y&MYh~ zRdjUFAkbT2`n&_2&afxU|2PCp&WYr01=9Owkq?H@C^?k=4h;eKbQ2! z6GaYE)$qV}ddqhOlk~r~r}ROoCJ<#cwISlQr=puSkKWyD zD*pUAP%8ZP3qr zox*2FdAh?e&=`eqhAm<|GXZSoQMUqXd?27o8vwR1C z7ey%~W!vspE|H3j$;4WrPvrZ|C8E5p2F%n^4x-CZ9q!oC+n>~hlLX0Vl~|&I*A1uh zvyH;rH-enfi#{_i4E1(v_VXPfz9hNy({81{`odg&C&Jt+tidaP%|n;oFP z)M@C8O_wd69x||omNHCZ5k4TtNOtS=xOj}gmF^R55y38bAGAc`b92?P$7?+aFQo!- z0^=Q-!WZkg)qwg%+T>EB%Ln*nrFKiwj$5M`cnpf)0Lr)o{B?P4&7>_DC{o#YyzrI2 z*lPXm#y{y#{Cu?+dp@^ABS7$vEh9exSag@?u_P^ z#&h;q^~y@9Mqf)m*q7lonByCo95qQF`&+V?&MghCM86jc@{mz`{yYqfq$6I{ZwxRo zGpAY)Z5;z5m(Biig3=;*U+(-5rCDu^w5q*Xy#ldyHoHU6ZinOYVt9vNg}R=4W5C z4OQq|Tb<8{FNdp?1IOsf6MrqM40TbTH-u=fpU6aiTKW!!BbA);R<(C!F z-`YME8El{{&Dsk)qISq)uD|D>72di&$*QYy8IU&@Iu)!tN?kBXAAwM*B;se*jq7@{ zW9jx%+!rV{OuuJD4Gb?GeDiqCH|>QCmus1lb~W151|uKPz)=;rQBY{e;nbEn`_*VAy7@_+Jp69;aOj+_sjoIc zLxHot%)bd}bJ#XfP7N(f?Da;^%xldH#Mt~A8|X=L+Fsv6U*QX1ac zo9_<4Vi*$dqO;jMk+Z?{&=P&LQY#cEL_bM&;P7L3kuzD5{~xj?SKG-*D0 zHt@>w_g>-ctbs5s&1SKG>8&-NLa`=ph9Li$Ud~Naj+>kBU{q%xm{Ptm>GY5O6vrq* z#*0}H!4}N-0zHk1pfd60(vLh#Woryiy(wC)4oR&G+ne$F>VA}UcpvD+edD)N1b^VS z@wY>}%pmR8ek_{1t^<<2)&BIUGvT@HyO2Al(pLWU)zTo+Gu<+#^^+maOOyWC)E~X$ z^!>CEk)Q@+HR1n@fZ6bJ5sj(~?e^nvP*5|F>^#lHq!y)w%pXD6ygzny>iC~JH65{_ z+`9N-AzBaifx_0X913dhfSU9W>M1al6aS!UG>{=2My{TAK1Xe-{Yicp|KE3&_YQG0 z1pDe={Hr!etC<^p7g=K_OQlQp1j!^?H(jZuc)a>2&6rbVINNbXo0R|r8u&E&EkMO3j!gHLaOK9k=<^K z=~h*jx@Wy7V+TErO8&2vM)h}qI-}+_`CWW&PmleAoc-zEEPG!H0%(DXr6-SBr7Ecc z%QF6h0VT41gw;uo6)ub$`verXcim0wEMP~Vmj)da!1IQK2ptVdDi^k8s;c0B&jdGl zf7~Rd-O&o%Q}FXp1s|ocmV96Hi+`RyK|S{zTp7d1wMdsTFRydf>57}0ER7xaL_(|# zZ`#+Sp3hY^DlU6^jlA}Rp)oq!W43YWdl*02sv#uhFT_QiS>UN{?S_^JaBq&n38t_R z?r&pg&$ko~*&WmA4Nig12hMpr{esBLelif51L_7_PGB8aT2+5_BNw0AlLh73n|Z}I zSa9Rp%;)Gn#BrL*>Zd>}b|c4EGTVAh+G$!hv(}0?HP_sGDS}xmJOO&EnOM;_O+jG8 z;R6OgrZw%?+}D@1CMQ;JUwrokN~bdp0))LU4ohr%lSVE`&bq>1itj01PX;#XC9L%! zLU$j1s|S*IwD>%a&}nFtg+XcwBI~+}6ZXMF|RysDY_Od^vH& z7Mt%jAMOvM#dlT)290Pg#Rj3dm3S~y@m~sNbW~xteyx<$pHjU4mE^IE<}Un`tseX1 z^YSdwrAR{NpM9DnF^#XkRlo4_n`#Y(! zVvHx9O^E^zDGVfA&7?i_Zs2eG;bb${3;nt1@6v!1NR5&BqT;LP0q#ZrvYOUAkV{(dG0rFQD-!v-@1^!LQhwH^5SA9t& zCp-f9^)O#}N;cb+;_2QbB`vmr@Q4bTnDfOGmf+;Fzd~`~+!t#`LN88;_0MXI2?61# zRykU1$fN`x%-hKO>s(*b6OfO*;8NhmB=_-or?j|^{0jF-895^$ zDFdR~rwOcW ziBR4;$eP@Mmsd#L!DBf&Nk%>E^{^l-#)XT1_e$M%&P?P9@uswO1wzG6nwr{!gVR47 zKJR8-QPL%)NOuT|bc28(-CY7oH!P5rZV&`P zx*MdsL`sxKxYCY@Fo89m)mV%p{K!$bxULYY4P zyc|*In{!1y54K_8rwP10mX9Wy&WkZw*r{e}I*CAwAOM^MTz#mnDT`v{+t?W$T-69WzuSZElqS@odo&pRb1 zV=l)$lLs8T?k6-*Mf+dgLEmp}h=vOO=d(G;=n*>GtN|Mh+FYU9{!c4Je1oFM zjD8X%xjB5Z!`$bw>}0-7C$`xy`;An+`3WG={PwTEPxYL+SGQK|;W40iuyFBtGl19! z`=YyEqjB4z9TW#XKi0W79?$aXbUca}X=Hm+Douzqb7*4o@LHF4Q2~_vk3|fv)~nkP zDu?ZM>Mw$)hQ8u~d;PnS$7dOiPe1?%f$q(b9vgQ9Nqv0M6E2!iDnwD(K!tKlg=mIn zV8}86Pr|(|326iJNqg~#!3~?Fs zO$hTgSA2wAs@q@m=4%IwJXa#>tff5Ms~b;u{G2DBX$oJUI3!p=+1T-N`<_U46>AM* zkxb+sGKTtMx43|AH*`Ypoh=W>UP;$TZBCZKc((3TIJg47{5pZk1TfbgQFNhO19r>? z=c}2x(89KHonuS^HD*fwu#WkBRM8YvxjB=&J=2y+)%-d(D@JQtkS-`9yU=s7u91zR zQc||xn`zP}Xs2?(P^$)Gm)r}bvDNGQ16TkHQ2!L0PS!%U5prG2x7CY>C8<8vnUJer zR0trNM2X--HG)k{P?iQqFR-RWcANjX6h9Rj`lerdiv`+9wyR8MkNLG-AflLZCp>1q z`~A3X1@hSk{3)Q3XunJfEnN1dkotymK6_m-;x{&TdUht0nCRLg$%6BBy4JRF;Cj{u zo6L1AFqDtiP$x_5qm<=D`akIat;GAq$}5QN>bDDN=pmno&Fu3W zrje(xw-L)tFf|i`GrGY>Z0+E1rt50do#gs}yu(6huSLL4tOD#A zq^5bHHMTA$J4Ulv5`xGmAl>>lvz#@`H*daj`A1x7`g9qeWKdAqOR)w~j0Tucl!5p! zy;Nph3`zGU^F)z)yGk{2XkMXOEs?X{BjyRtw<_tw-MNA?k~pAx^X@(O!U-k2k@{FE z1KJEfw5`I4(dzb+96ztJ^IGlv{3&ol!J_zF)1!;=Tc??zOZ}Q9!vg%zEX;CkSC2;Q z+Y_yAm0(9WKBK78hqn8{4+@HlzlJ?&fmP}6gTzA2+M0!iaUWG_c>xhl$Y4SGH@^O3 zjVT~k0EZmrqz=06*r!1KZDz_z?3!H&6LnR6Yda~3ze?sn1))#7>ux>H=upvRj0sYi*W%YN*rfaS-kS54OZm}z#YM7e z=_Ma1_b4NdMu6UFFKCo(%Uf}qiU{33wIhy`}2A+-(Z zWsVAJ?R?^T2y1Bkw{>EJPRYgG%NfgKK_WHB~xbncHK20$D&P3~lk`iud!)Bo? z220LgHVX(SOi}hdla`kLzp7jWgoHp>Bu@{j{%z2R7k<9J@DQK>$MK5s`#?Fi*FQWQ z10n)^EKT~hZ9>3@0S2u=aGZqX)=a9kmDJRbtfR@INuA{jTw$fH)Ig#@z=C3Ar*Bnl z0B(xBPoIdv72VU7%nEC7^h|Zg-cu9(3V|hWz^a~t>6++LX!g>OJ9~gLU_$-ks zRpsR>YLnfWSkvWUAqbPRDv+0kM7h(W%9+2(e~_@2m$qife$oPIIfHM>lJtwLd@mhP z1!#>;n@pPbFnm;Ud{yG#(Y5-W%qfJz7ta=TkC4N0nJ(WZv zRT?(q9M-512>kerkX1Lh-f@k~Ywy;0UDm?F!mx6ZZ*_+88CMdfi079ShJ>jpZE(mx zzODY6W=GE#C;USBLVKyi$7&X%??7%}z0`MGXsD2gD3s|@g}DI!$Yjs@Thw6(kO@Dg z)c46D2E64s>9I2^?&Ke8?)%+8Zbi!3_dD}i3$H(YIb8TWne|LaBA(KA9?QHFt!Lg7 z+28z_(P``6SSL|d-|@KEe6#y?*a^;)57Ql+h^d#V5w=hyx+x^l_UbjMy0@W-a%jcs zKN(A@M_IuIzp1QeI~T{tD5J%X6gDT_aJ-N9gjH~6K;Tez8vrSvw471dfDz~rABIp6 z?W-46vn^slgwn8q;qMEWumCfyFI*iCL>=!d|34GbWjw6^*5v64jKvQo7YlA`US*7^ zMHiQByD)C1_wqiPYGNE*kqh8EbVBickkk%^yzdI`So;#oKlfF}esgTMDBlN`mV!OF zWoaqi<)>LR^yVBECI{LtQv{bc3y<#|EZk^VGZdj(DX1neF9Fxbt0M|I*=`(#0-(oT zHwyo!i-R@aalOCT0r5e_qeHYhbQSnCb{oFm9^AZOe6EDgL*vr3(;sLJ zO=DgW;xEEp+Ql5`ZqjI^dTHlzN?I)Q@e5GP_~4ry57BXWUQjG=7QJe?a>!p&WZO7l zay{|n*S};s+q39$B_(U*!lW}^^F#;&`(}(JSh!I4>u%yk=+4v`J3wvMPGg334kyr@ z@NX4Y0$4Yfb!hkg-D%4wD4|5bkJSOb=u{9@sh7Q5DzOIPh$pt$VczptZY1!~ah#FL zA6g+VM9-|(@^Eb_OB5B(x-20+-fKqQa^Gv$AWj&yl^(Qs&*jPY?9D*nO>yN?4bDbO znrGb}E%QknVhd`tIsVhrKqp-eZK99mu=<|_70^)vCs)FcH=2**yY%zGzQn-7(h0t^ zArK3^fsLF3ZMoO41p*~u4|bHXH+2*2_Jy_!1-ht{Z;QdnIQnpKMc$VSWOKjsp2u-L zwF#N%m!h}WZ`5jjUE zjnjXCRnc^q-cO7vD*JAXk>7{?FmU1gz{S|`%>dWzoQ^I=AIOYbKxX_jKn~~>kIUJyg>NfLjr8)?Q$``==AVE0^| zJg8qw4TB9a0qxQU+%_bTg^E7bjopFqpPU zY=7^U2f|FU|G4HQl(dzGhq++7F*=~50u+x|y)m>97_$qw4oQSOc+!o)$7RMr3>%OJ z)GJQKK_6p`>W5ijp{p9*H~k}o`QrPC3*#dgb(ap*Ri8#nEkOM?^DG!dHmo^tK+Dt( zhRR{2?5-Gb@ugsa`FFgfO~0kLr>cu4ZxRy|VF--`t336?(_2%1s{d}1ooQAdNhKi= zP*@3mJFEv3kR|#mt%K&POj0M;CHy{SK6EZrRp-anMyk1s+a0Mi@d|p7ST2@K&)2n& zPM);FO5Al^)*w=~S&=gN{wd%njMX=RaFW;P^|C(p%~c^L{r7j*D~+qcXVWYj5BSBC zeBRR%0`1Db9e^^Gbl=BINf zL5yR)`oXaK6-66nxrQ|YG=Xx&!P>g7yRSzC2-zr&e?DFh#0VK?nC@Rz`@AoPtbaZn zVwl$0;#7>i>0KiyM4Nnh(hgW>m>F{Puw{giJa}Lq{iUDv*8> zOh2f2oCQd+hOHn31B(gF@ljP(MHEzj^@`pX2iIN>Jpk7fKFtzJ5wJqe|h@=b|NtZ z3goo48$5@SW7mf*Fa|bR5@r{dQ58CUoLv}BUZhr=H!*x+@_kCxfTqGpmau8FNBgV?8T&b`vN3Le0Cn%;fyRgIY1oR{u{-@zLk8f-Mdoe(ZRBN7mo!?Ris07=LfX2C z(SSGfj=BL_czmOo1ptNeMm5T1IfDDev1`F&(2@hy3CJgJnmhVPW?6MFbiqX7^t=77 z-%^1;=m)qmX?)SCB#Ra-;cNZIkqJVwg29z!Owp8yfF}iW3Y?M$GyN_H2M2q;Hscp2 zGj*l82bYgp*_UHS*gt91GouB@Hz=J>=zh4}b7Xi`IIQ;e?NdE_q-Sq__~yFo<$tH1 zx~c7q=$@;}=*QLEB(NCxTJnXn>Om8a5@o1B3J38Ws*6RO=BZ)k ze=M&SG8MB5P!iD}g|8s+?i#h?qb@;owiaSBo@nBFAJx;6j7(jA;0iPz>Up?%=!ISC zRm}RrZ}m#ppcmg~oqg4QY5JOKmiE<@Jo6i?N<+f{Wce$S3lU#Phd(OpfHGIf6_FbD zeN-gYb>*^iX4lNWeqwO_JW5zU@m@-x+D_h*G3LLfF&I|C-$&1aL205k^$*(t)``n@ zv{b0L&ff2ZipF96T~gT-$R9?QEcqOeY5MUTCw20iRft)i96GO3G=1&WoJ-shmcrvw zM(SqJSC*ry*FdohnsN=BOlAPNcUZUl>d@=S%~dD??by46Ia-~s2DUG|C&glmcI2Kd z{_hn@2rhc9NV)5~-Zfrn%hqY8#c)&=O(O!iY?-RgRY3HCAS&Bm_!{1;SSUEprN!@w z*W7~xYxxqJ(>`cVLQ5avMPMe%@=9+{-G#*ifE`Yk-~Guv-40Y#c$H;UYpAr1IIsNbLCj7OA2=;ipD<5M&|Uo zzO7bhoGA38m;-)?=_D4zJ9MF%p!9x`sn4y?$9K?zKP`lrD*v8P@`Nbdo?*2xP2xMG z$yyWJkU62I&R1t2m~P0E+vpkFjMabLoqf+~NhqtKhvfV*a_ITGVF5PG%B;|hFs~`a zjpBOMz@f_}->qON?i0oNPZ^+RVWg>1>7f^#N%@ZpP{(7Dy9M^k7Q(Iy|o_c;j>Y>*_yCS4D<#hF?XSL3`=QWO? zzQ<{=CC_p`o+*i=(b)iNJ{8K7G!zeh22Ap__wQWDbl*9Zu!U9zlS(M<|Kw)9vQ8x3 zrPzBJL6+S$54_K>N||o_w$jfu#bB(WzlEc+b+A@Pb$njcV%QgdtgK2P5)U14d!{t^ z_}v^wi2l7vJvfFIaco|ip$Q_bgX}|M88|hnyPfR(^X-MhC6uSVKR@kzUq9)3 zlG033d;|Bhbq;GBTX=zd?x!d5b14PMaqRfzsohyS7D$%#c>hqhBtUxv=~pgJ&%Qex z%lBz~!o3ua4jib(cQMTXzxL$75^fUreCgL>T0|F|q*IVxvgC6f+pK*`63GDFY8CAl~mq<=I zk5_N;92|A3bCY?F1Zuk*p5OTFG6{GVp?0_(yoOcqoXPCp{u(JWXyuv(_$(lAWB8T@ zGpJZRy7f);&3gb*1R)=tYzN9XQL~l|k%3-j(6oquKC@5$7MiFAL}`3=Mc9)lc#0K* zujze;X|h&clk%?jB)huYh&%P>fV7xpdT4tMT;;1A)@1w95Vmf?2l`9C-VAVb@m z27eS@{^?^c4)TXg9lvSrmy+&z?_o7u=N=x{oqpq3um1Ct`e{MllO-ATqAHC7Me);P zy|QjvZ*IAU`rox+9Qk0jar;V6I7t!|4V7)gc}-q317uk`)d1Ygv|GbJ3C8PHZ=RGNK;x|I_WV ze_7XhGG&RoqoJbW=f2lWbO%)h^2Y_2)=Rx`$$0Jmqtiu83wKF?k1vun1R$T8AeUG# zM?>EtdgsWO@-*oO+%zXKCK?(V1VR{w^q2P72gqC?K0tlkuvy+~^8Ce%dyw?ZO!zqp zbeYwal{Ukt5Rt)ij+9v7iH7Nz51dBtf+Gw^_~<{)E?mc9GY;4wc9wGR?tl zC(cg1pnEWBk2p3jAKaMpBTT(;AVhF4vtgUu zrFY#VQW50bAj1pA-d7u^|K2>LmYjp$nh4Z3TZIO?fIzlJLE(=nTLwRHKHll`La&|%FX8YSA8__M=_`KEg_{@ zBZ64Gh=845kF<-#G+yCipXOw$NGMHvt+#N^^{D~FHI&wkwD7BE>QDNKfSccHJ0{@Y|+%J^QYMl^-R>S5?23GB$AX-inu>B5I~aCt$atj(re1fP9)NXlFBnvX(3N*>(xq|Yi@V%_$Ovfz zO7EnF_fC&teKHGIxbz{j`}_%rsOoy+f5}vE22V`*2b=O5^Y`9odJbKO9Ic;9?DhB_ zJDFApdf~tHH60-1;kNb#eE&Kw+d!*IPMfHzqB`hc`o+pc0^3tC-B=AeEnO?eZu-Tk zlYp}JBiG~Xsb+Wdv|uILUAe-t+Qx(ZM_i*5@bfcU<7#&ysB2ob2XErDv*iEa8fY$J zem{(9B~o;DcJ`Hg4(d`Va_(T$t5`<)UK9wY2p7ul=4XkmVx+MD^4|LSXg0f zwwes`ib8`1tSOmb6-6l#zc|@gE7acd3PD$=Mg(g(i=D*1tdt?)DbmJr*Esz|)@Z!a z=!W(TE5{KQK|~k8;AwBOA}KsBe>GX#UZyv$Ftj|tK4LgnUU=6&N&u>ZCptA45HM^h zZQ(uGy_HPwN0_)%cOp}C5p4OQWpcIt*^R~E^~R4)WQd&UKqy_|3P6WHPk-B!E=O;hub!A=Ci(%B}w0yp(Qy&%_ k>-;ti!02! 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.12.1", "rich>=10.11.0", "typing-extensions"] test = ["pytest", "pytest-cov", "pytest-mpl", "pillow<12.3.0", "matplotlib", "tabulate"] lint = ["black", "isort>=6.0.0", "pylint", "mypy", "qbraid-cli>=0.10.2"] docs = ["sphinx>=7.3.7,<8.3.0", "sphinx-autodoc-typehints>=1.24,<3.2", "sphinx-rtd-theme>=2.0.0,<4.0.0", "docutils<0.23", "sphinx-copybutton"] -visualization = ["pillow<12.2.0", "matplotlib", "tabulate"] simulation = ["numba>=0.59"] visualization = ["pillow<12.3.0", "matplotlib", "tabulate"] pulse = ["openpulse>=1.0.1"] From 9af158f9d54c35cad872538207fd3327109a041e Mon Sep 17 00:00:00 2001 From: Kenny Heitritter <33943422+Kenny-Heitritter@users.noreply.github.com> Date: Tue, 26 May 2026 10:03:30 -0500 Subject: [PATCH 13/16] Rename bench_random_evolved_no_cache.png to bench_random_evolved.png --- ...volved_no_cache.png => bench_random_evolved.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename benchmarks/{bench_random_evolved_no_cache.png => bench_random_evolved.png} (100%) diff --git a/benchmarks/bench_random_evolved_no_cache.png b/benchmarks/bench_random_evolved.png similarity index 100% rename from benchmarks/bench_random_evolved_no_cache.png rename to benchmarks/bench_random_evolved.png From e7879ced79df0faa4a21b96e45c12e9aac8b0f97 Mon Sep 17 00:00:00 2001 From: Kenny Heitritter <33943422+Kenny-Heitritter@users.noreply.github.com> Date: Tue, 26 May 2026 10:04:00 -0500 Subject: [PATCH 14/16] Rename bench_qft_evolved_no_cache.png to bench_qft_evolved.png --- ...t_evolved_no_cache.png => bench_qft_evolved.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename benchmarks/{bench_qft_evolved_no_cache.png => bench_qft_evolved.png} (100%) diff --git a/benchmarks/bench_qft_evolved_no_cache.png b/benchmarks/bench_qft_evolved.png similarity index 100% rename from benchmarks/bench_qft_evolved_no_cache.png rename to benchmarks/bench_qft_evolved.png From f07ebcd6fa18dc0d382d2e6f6690609944a7b51e Mon Sep 17 00:00:00 2001 From: Kenny Heitritter <33943422+Kenny-Heitritter@users.noreply.github.com> Date: Tue, 26 May 2026 10:04:24 -0500 Subject: [PATCH 15/16] Rename bench_evolved_no_cache.json to bench_evolved.json --- benchmarks/{bench_evolved_no_cache.json => bench_evolved.json} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename benchmarks/{bench_evolved_no_cache.json => bench_evolved.json} (100%) diff --git a/benchmarks/bench_evolved_no_cache.json b/benchmarks/bench_evolved.json similarity index 100% rename from benchmarks/bench_evolved_no_cache.json rename to benchmarks/bench_evolved.json From 1d56076a41921b2a34f9a10ecd2c6c13eae59265 Mon Sep 17 00:00:00 2001 From: "Kenny J. Heitritter" Date: Tue, 26 May 2026 10:22:06 -0500 Subject: [PATCH 16/16] Fix CI for statevector simulator PR --- .github/workflows/main.yml | 6 ++- .github/workflows/pre-release.yml | 6 ++- .github/workflows/release.yml | 6 ++- .github/workflows/test-release.yml | 6 ++- pyproject.toml | 12 +++++- src/pyqasm/accelerate/sv_sim.pyx | 2 + src/pyqasm/simulator/__init__.py | 16 ++++--- src/pyqasm/simulator/statevector.py | 66 ++++++++++++----------------- tests/test_perf_regression.py | 3 ++ 9 files changed, 74 insertions(+), 49 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 69db59fb..b5bfe0f8 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -107,6 +107,10 @@ jobs: # Thus, the matrix.python is not required here, only for setting up builds python-version: "3.11" + - name: Install OpenMP runtime on macOS + if: startsWith(matrix.os, 'macos') + run: brew install libomp + - name: Build and Test Wheels env: # since cibuildwheel builds for all python versions >= current version, we need to @@ -190,4 +194,4 @@ jobs: token: ${{ secrets.CODECOV_TOKEN }} fail_ci_if_error: false files: ./build/coverage/coverage.xml - verbose: true \ No newline at end of file + verbose: true diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml index cdca0227..9581e3c5 100644 --- a/.github/workflows/pre-release.yml +++ b/.github/workflows/pre-release.yml @@ -96,6 +96,10 @@ jobs: with: python-version: "3.11" + - name: Install OpenMP runtime on macOS + if: startsWith(matrix.os, 'macos') + run: brew install libomp + - name: Build and Test Wheels env: PRE_RELEASE_BUILD: "true" @@ -176,4 +180,4 @@ jobs: uses: pypa/gh-action-pypi-publish@release/v1 with: user: __token__ - password: ${{ secrets.PYPI_API_TOKEN }} \ No newline at end of file + password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 142c34d8..166cee61 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -98,6 +98,10 @@ jobs: with: python-version: "3.11" + - name: Install OpenMP runtime on macOS + if: startsWith(matrix.os, 'macos') + run: brew install libomp + - name: Build and Test Wheels env: CIBW_BUILD: "cp${{ matrix.python }}-${{ matrix.platform_id }}" @@ -167,4 +171,4 @@ jobs: uses: pypa/gh-action-pypi-publish@release/v1 with: user: __token__ - password: ${{ secrets.PYPI_API_TOKEN }} \ No newline at end of file + password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index bd2b9475..b7f79107 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -96,6 +96,10 @@ jobs: with: python-version: "3.11" + - name: Install OpenMP runtime on macOS + if: startsWith(matrix.os, 'macos') + run: brew install libomp + - name: Build and Test Wheels env: CIBW_BUILD: "cp${{ matrix.python }}-${{ matrix.platform_id }}" @@ -166,4 +170,4 @@ jobs: with: repository-url: https://test.pypi.org/legacy/ user: __token__ - password: ${{ secrets.TEST_PYPI_API_TOKEN }} \ No newline at end of file + password: ${{ secrets.TEST_PYPI_API_TOKEN }} diff --git a/pyproject.toml b/pyproject.toml index 512596fb..e9a3303b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -42,7 +42,17 @@ Homepage = "https://docs.qbraid.com/v2/pyqasm" [project.optional-dependencies] cli = ["typer>=0.12.1", "rich>=10.11.0", "typing-extensions"] -test = ["pytest", "pytest-cov", "pytest-mpl", "pillow<12.3.0", "matplotlib", "tabulate"] +test = [ + "pytest", + "pytest-cov", + "pytest-mpl", + "pillow<12.3.0", + "matplotlib", + "tabulate", + "qiskit", + "qiskit-aer", + "qiskit-qasm3-import", +] lint = ["black", "isort>=6.0.0", "pylint", "mypy", "qbraid-cli>=0.10.2"] docs = ["sphinx>=7.3.7,<8.3.0", "sphinx-autodoc-typehints>=1.24,<3.2", "sphinx-rtd-theme>=2.0.0,<4.0.0", "docutils<0.23", "sphinx-copybutton"] simulation = ["numba>=0.59"] diff --git a/src/pyqasm/accelerate/sv_sim.pyx b/src/pyqasm/accelerate/sv_sim.pyx index 7be58233..2ce338ad 100644 --- a/src/pyqasm/accelerate/sv_sim.pyx +++ b/src/pyqasm/accelerate/sv_sim.pyx @@ -16,8 +16,10 @@ # cython: infer_types=True import os + import cython import numpy as np + from cython.parallel cimport prange from openmp cimport omp_get_max_threads diff --git a/src/pyqasm/simulator/__init__.py b/src/pyqasm/simulator/__init__.py index 2686e9c1..a1d56354 100644 --- a/src/pyqasm/simulator/__init__.py +++ b/src/pyqasm/simulator/__init__.py @@ -1,12 +1,16 @@ -# Copyright (C) 2025 qBraid +# Copyright 2026 qBraid # -# This file is part of PyQASM +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at # -# PyQASM is free software released under the GNU General Public License v3 -# or later. You can redistribute and/or modify it under the terms of the GPL v3. -# See the LICENSE file in the project root or . +# http://www.apache.org/licenses/LICENSE-2.0 # -# THERE IS NO WARRANTY for PyQASM, as per Section 15 of the GPL v3. +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. """ Module containing the PyQASM statevector simulator. diff --git a/src/pyqasm/simulator/statevector.py b/src/pyqasm/simulator/statevector.py index 6eb9db33..e9ea74d9 100644 --- a/src/pyqasm/simulator/statevector.py +++ b/src/pyqasm/simulator/statevector.py @@ -17,6 +17,10 @@ """ +# pylint: disable=no-name-in-module,too-many-return-statements +# pylint: disable=too-many-locals,too-many-branches,too-many-statements +# pylint: disable=arguments-out-of-order,unused-argument + from collections import Counter from dataclasses import dataclass @@ -33,12 +37,13 @@ ) from pyqasm import loads -from pyqasm.accelerate.sv_sim import apply_circuit +from pyqasm.accelerate.sv_sim import apply_circuit # type: ignore[import-not-found] from pyqasm.modules.base import QasmModule try: - import numba as nb + import numba as nb # type: ignore[import-not-found] except ImportError: # pragma: no cover - performance-only optional dependency + class _NumbaCompat: """Fallback decorator shim when numba is not installed.""" @@ -171,9 +176,7 @@ def _diagonal_phases_from_matrix(mat: np.ndarray) -> tuple[complex, complex]: # Fast-path single-qubit gate properties. Diagonal gates are kept as phase # pairs while fusing so they can flush directly to the diagonal Cython kernel # instead of materializing a 2x2 matrix. -NON_PARAMETERIZED_GATE_PROPS: dict[ - str, tuple[bool, complex, complex, np.ndarray | None] -] = { +NON_PARAMETERIZED_GATE_PROPS: dict[str, tuple[bool, complex, complex, np.ndarray | None]] = { "x": (False, _COMPLEX_ZERO, _COMPLEX_ZERO, _CONST_X), "y": (False, _COMPLEX_ZERO, _COMPLEX_ZERO, _CONST_Y), "z": (True, 1.0 + _COMPLEX_ZERO, -1.0 + _COMPLEX_ZERO, None), @@ -220,19 +223,6 @@ def _diagonal_phases_from_matrix(mat: np.ndarray) -> tuple[complex, complex]: _OP_CTRL_DIAGONAL = 3 _OP_TWO_QUBIT = 4 -# Binary/unary operator maps for expression evaluation -_BINARY_OPS = { - BinaryOperator["+"]: lambda a, b: a + b, - BinaryOperator["-"]: lambda a, b: a - b, - BinaryOperator["*"]: lambda a, b: a * b, - BinaryOperator["/"]: lambda a, b: a / b, - BinaryOperator["**"]: lambda a, b: a**b, -} - -_UNARY_OPS = { - UnaryOperator["-"]: lambda a: -a, -} - def _try_eval_expression(expr) -> float | None: """Try to evaluate an AST expression to a float value.""" @@ -251,17 +241,23 @@ def _try_eval_expression(expr) -> float | None: rhs = _try_eval_expression(expr.rhs) if lhs is None or rhs is None: return None - op_fn = _BINARY_OPS.get(expr.op) - if op_fn is not None: - return op_fn(lhs, rhs) + if expr.op is BinaryOperator["+"]: + return lhs + rhs + if expr.op is BinaryOperator["-"]: + return lhs - rhs + if expr.op is BinaryOperator["*"]: + return lhs * rhs + if expr.op is BinaryOperator["/"]: + return lhs / rhs + if expr.op is BinaryOperator["**"]: + return lhs**rhs return None if isinstance(expr, UnaryExpression): operand = _try_eval_expression(expr.expression) if operand is None: return None - op_fn = _UNARY_OPS.get(expr.op) - if op_fn is not None: - return op_fn(operand) + if expr.op is UnaryOperator["-"]: + return -operand return None return None @@ -367,11 +363,7 @@ def _flush_pending(target: int): return is_diagonal, phase0, phase1, mat = pending.pop(target) - if ( - is_diagonal - and (np.abs(phase0 - 1.0) < 1e-10) - and (np.abs(phase1 - 1.0) < 1e-10) - ): + if is_diagonal and (np.abs(phase0 - 1.0) < 1e-10) and (np.abs(phase1 - 1.0) < 1e-10): return if not is_diagonal and mat is not None and _is_diagonal_matrix(mat): is_diagonal = True @@ -411,11 +403,11 @@ def _accumulate( return current_matrix = ( - _diag_to_matrix(current_phase0, current_phase1) - if current_is_diagonal - else current_mat + _diag_to_matrix(current_phase0, current_phase1) if current_is_diagonal else current_mat ) new_matrix = _diag_to_matrix(new_phase0, new_phase1) if new_is_diagonal else new_mat + if current_matrix is None or new_matrix is None: + raise ValueError("Invalid pending gate fusion state.") fused = new_matrix @ current_matrix if _is_diagonal_matrix(fused): phase0, phase1 = _diagonal_phases_from_matrix(fused) @@ -443,9 +435,7 @@ def _accumulate( gate_fn = PARAMETERIZED_GATES[gate_name] required_params = 3 if gate_name == "u3" else 1 if len(params) != required_params: - raise ValueError( - f"Gate {gate_name} requires {required_params} parameter(s)." - ) + raise ValueError(f"Gate {gate_name} requires {required_params} parameter(s).") mat = gate_fn(*params) _accumulate(target, False, _COMPLEX_ZERO, _COMPLEX_ZERO, mat) else: @@ -522,7 +512,7 @@ class SimulatorResult: """Class to store the result of a statevector simulation.""" probabilities: np.ndarray - measurement_counts: Counter[str, int] + measurement_counts: Counter[str] final_statevector: np.ndarray @@ -571,8 +561,8 @@ def run(self, program: QasmModule | str, shots: int = 1) -> SimulatorResult: sv = np.zeros(2**num_qubits, dtype=np.complex128) sv[0] = 1.0 - n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = ( - _preprocess(program, num_qubits) + n, opcodes, targets, controls, gate_params, diag_phases, tq_offsets, tq_gates = _preprocess( + program, num_qubits ) if n > 0: diff --git a/tests/test_perf_regression.py b/tests/test_perf_regression.py index 03c926f2..ab56caf7 100644 --- a/tests/test_perf_regression.py +++ b/tests/test_perf_regression.py @@ -110,6 +110,7 @@ def sim(): # Random circuit performance tests # --------------------------------------------------------------------------- + @pytest.mark.benchmark @pytest.mark.parametrize( "num_qubits, depth, baseline_ms", @@ -135,6 +136,7 @@ def test_random_circuit_perf(sim, num_qubits, depth, baseline_ms): # QFT circuit performance tests # --------------------------------------------------------------------------- + @pytest.mark.benchmark @pytest.mark.parametrize( "num_qubits, baseline_ms", @@ -160,6 +162,7 @@ def test_qft_circuit_perf(sim, num_qubits, baseline_ms): # Scaling sanity check: ensure O(2^n) per gate, not worse # --------------------------------------------------------------------------- + @pytest.mark.benchmark def test_scaling_not_superexponential(sim): """Verify that doubling qubits roughly doubles per-gate time (not worse).