{ "about": "Run time and peak memory per engine on one host: tools/perf.py. Times are each engine's own call (timers says where each starts and stops), the minimum and median of repeated runs; memory is the peak resident set of the process that ran the engine.", "timers": { "wai": "the engine's run, after the program is read and lowered (the driver's own clock)", "aer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "qsim": "the simulate call, which converts the circuit to its own form inside it", "ddsim": "the run call, which converts the circuit to its own form inside it", "stim": "the tableau's or sampler's run, after the circuit text is parsed", "quimb": "the building of the circuit object, which applies each gate as it is added, and the read-out" }, "host": { "system": "Linux", "machine": "x86_64", "release": "7.0.0-38-generic", "cpu": "AMD RYZEN AI MAX+ 395 w/ Radeon 8060S", "memory_bytes": 131890810880, "os": "Ubuntu 26.04.1 LTS", "logical_cpus": 32, "load_average": [ 17.81689453125, 20.05810546875, 23.994140625 ] }, "versions": { "cirq-core": "1.7.0", "mqt.core": "3.11.0", "mqt.ddsim": "2.7.0", "numpy": "2.5.4", "python": "3.12.16", "qiskit": "2.6.2", "qiskit-aer": "0.18.2", "qsimcirq": "0.22.1", "quimb": "1.15.0", "scipy": "1.18.1", "stim": "1.16.0" }, "engine_under_test": "wai/wai-quantum 0cd14ae3d7845da8d8a1782565781b8a54bb141b, wai/wai-quantum-qpu c1031872aac2c4d2bcf134af80b9dc454954a2de, wai/wai-quantum-cli d3407ee21f3de60a94f4aad561c3dd5c94d47905, wai/quantum-cross-simulator/tools 4f8a83407e5d84edb64017508ab2833879a58bec, wai/quantum-cross-simulator/corpus 1bac9494b3e2e021b99e84fb39b0b046cc970198; rustc 1.99.1 (58cf8f9c3 2026-10-13)", "repeat": 5, "rows": [ { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 13.9, 16.5, 19.5 ], "load_after": [ 13.9, 16.5, 19.5 ], "seconds_min": 0.03469564, "seconds_median": 0.036312275, "wall_median": 0.07198531110771, "peak_rss_mib": 26.2, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 230, "settings": null }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 13.9, 16.5, 19.5 ], "load_after": [ 13.7, 16.4, 19.5 ], "seconds_min": 0.736629914, "seconds_median": 0.819352023, "wall_median": 1.2169226999394596, "peak_rss_mib": 115.6, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 231, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.828982108971104 }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 14.6, 16.6, 19.5 ], "load_after": [ 28.9, 19.9, 20.5 ], "seconds_min": 3.1572952889837325, "seconds_median": 4.782281965948641, "wall_median": 6.773611888056621, "peak_rss_mib": 195.6, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "ddsim.statevector", "cpus": 32, "threads": "not set", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 28.0, 19.8, 20.5 ], "load_after": [ 28.0, 19.8, 20.5 ], "seconds_min": 0.3291312060318887, "seconds_median": 0.34920829394832253, "wall_median": 0.7068916009739041, "peak_rss_mib": 131.8, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "wai.exact", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 28.0, 19.8, 20.5 ], "load_after": [ 27.2, 19.8, 20.5 ], "seconds_min": 0.260165551, "seconds_median": 0.270095824, "wall_median": 0.3120804578065872, "peak_rss_mib": 37.8, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 250, "settings": null }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "quimb.dense", "cpus": 32, "threads": "not set", "timer": "the building of the circuit object, which applies each gate as it is added, and the read-out", "load_before": [ 27.2, 19.8, 20.5 ], "load_after": [ 31.9, 21.5, 21.0 ], "seconds_min": 3.989435547031462, "seconds_median": 4.915047463960946, "wall_median": 5.326739995973185, "peak_rss_mib": 290.8, "baseline_rss_mib": 195.3, "repeats": 5, "ops": null, "settings": { "arithmetic": "double" } }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 31.9, 21.5, 21.0 ], "load_after": [ 31.2, 21.5, 21.0 ], "seconds_min": 0.351616484, "seconds_median": 0.372078428, "wall_median": 0.43293185508809984, "peak_rss_mib": 22.7, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 230, "settings": null }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 31.2, 21.5, 21.0 ], "load_after": [ 31.4, 21.7, 21.1 ], "seconds_min": 0.294446457, "seconds_median": 0.444602848, "wall_median": 1.0205127999652177, "peak_rss_mib": 115.5, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 231, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.45243540802039206 }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 31.4, 21.7, 21.1 ], "load_after": [ 29.3, 21.6, 21.1 ], "seconds_min": 0.04336140397936106, "seconds_median": 0.04540844191797078, "wall_median": 1.9667487589176744, "peak_rss_mib": 195.1, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "ddsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 29.3, 21.6, 21.1 ], "load_after": [ 27.7, 21.4, 21.0 ], "seconds_min": 0.5001739237923175, "seconds_median": 0.5616590939462185, "wall_median": 1.0102932290174067, "peak_rss_mib": 132.1, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "wai.exact", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 27.7, 21.4, 21.0 ], "load_after": [ 27.7, 21.4, 21.0 ], "seconds_min": 0.348989019, "seconds_median": 0.3928144, "wall_median": 0.4554282929748297, "peak_rss_mib": 37.7, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 250, "settings": null }, { "case": "qft_n20", "what": "the QFT of a basis state, the whole state", "engine": "quimb.dense", "cpus": 1, "threads": "1 (pinned)", "timer": "the building of the circuit object, which applies each gate as it is added, and the read-out", "load_before": [ 27.7, 21.4, 21.0 ], "load_after": [ 25.0, 21.0, 20.9 ], "seconds_min": 1.2560701919719577, "seconds_median": 1.3738685408607125, "wall_median": 1.7065140479244292, "peak_rss_mib": 276.0, "baseline_rss_mib": 195.3, "repeats": 5, "ops": null, "settings": { "arithmetic": "double" } }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 25.0, 21.0, 20.9 ], "load_after": [ 26.2, 21.3, 21.0 ], "seconds_min": 0.44091, "seconds_median": 0.450084747, "wall_median": 0.5097068571485579, "peak_rss_mib": 279.1, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 324, "settings": null }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 26.2, 21.3, 21.0 ], "load_after": [ 29.5, 22.5, 21.4 ], "seconds_min": 1.600931302, "seconds_median": 3.903430314, "wall_median": 4.581813717959449, "peak_rss_mib": 355.7, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 325, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 3.9180846540257335 }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 29.5, 22.5, 21.4 ], "load_after": [ 30.9, 23.2, 21.6 ], "seconds_min": 1.9065197920426726, "seconds_median": 2.55521747097373, "wall_median": 3.9374133981764317, "peak_rss_mib": 314.6, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "ddsim.statevector", "cpus": 32, "threads": "not set", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 30.9, 23.2, 21.6 ], "load_after": [ 25.7, 22.7, 21.5 ], "seconds_min": 5.343103968072683, "seconds_median": 6.216828131116927, "wall_median": 6.683423415059224, "peak_rss_mib": 612.1, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "wai.exact", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 25.7, 22.7, 21.5 ], "load_after": [ 18.8, 21.4, 21.1 ], "seconds_min": 6.479803251, "seconds_median": 6.604422898, "wall_median": 6.766900039976463, "peak_rss_mib": 517.9, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 348, "settings": null }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 18.8, 21.4, 21.1 ], "load_after": [ 20.5, 21.4, 21.1 ], "seconds_min": 5.351793387, "seconds_median": 5.815087344, "wall_median": 5.919137754011899, "peak_rss_mib": 262.9, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 324, "settings": null }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 20.5, 21.4, 21.1 ], "load_after": [ 21.2, 21.6, 21.2 ], "seconds_min": 6.595822778, "seconds_median": 8.168913041, "wall_median": 8.689333342015743, "peak_rss_mib": 355.8, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 325, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 8.17861163802445 }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 21.2, 21.6, 21.2 ], "load_after": [ 19.6, 21.2, 21.1 ], "seconds_min": 1.6282077019568533, "seconds_median": 1.8977461338508874, "wall_median": 3.313980136066675, "peak_rss_mib": 315.1, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "ddsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 19.6, 21.2, 21.1 ], "load_after": [ 18.5, 20.9, 21.0 ], "seconds_min": 6.229627545922995, "seconds_median": 7.358229818986729, "wall_median": 7.737501638941467, "peak_rss_mib": 612.1, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "qft_n24", "what": "the QFT of a basis state, the whole state", "engine": "wai.exact", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 18.5, 20.9, 21.0 ], "load_after": [ 14.9, 19.7, 20.6 ], "seconds_min": 7.004925876, "seconds_median": 7.803535915, "wall_median": 7.960806139046326, "peak_rss_mib": 518.0, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 348, "settings": null }, { "case": "qft_n26", "what": "the QFT of a basis state, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 14.9, 19.7, 20.6 ], "load_after": [ 19.9, 20.6, 20.9 ], "seconds_min": 2.050841718, "seconds_median": 2.143195658, "wall_median": 2.2692657159641385, "peak_rss_mib": 1047.2, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 377, "settings": null }, { "case": "qft_n26", "what": "the QFT of a basis state, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 19.9, 20.6, 20.9 ], "load_after": [ 23.6, 21.4, 21.1 ], "seconds_min": 3.697445892, "seconds_median": 3.965502664, "wall_median": 4.368155032861978, "peak_rss_mib": 1124.0, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 378, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 3.9734812600072473 }, { "case": "qft_n26", "what": "the QFT of a basis state, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 23.6, 21.4, 21.1 ], "load_after": [ 31.5, 23.5, 21.9 ], "seconds_min": 3.9340623850002885, "seconds_median": 5.620794834103435, "wall_median": 7.388700124807656, "peak_rss_mib": 699.5, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "qft_n28", "what": "the QFT of a basis state, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 31.5, 23.5, 21.9 ], "load_after": [ 44.7, 29.7, 24.1 ], "seconds_min": 12.403211793, "seconds_median": 14.177903268, "wall_median": 14.68653234699741, "peak_rss_mib": 4118.2, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 434, "settings": null }, { "case": "qft_n28", "what": "the QFT of a basis state, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 44.7, 29.7, 24.1 ], "load_after": [ 41.8, 32.8, 25.8 ], "seconds_min": 15.303331353, "seconds_median": 16.838620719, "wall_median": 17.2821189800743, "peak_rss_mib": 4197.7, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 435, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 16.848389647901058 }, { "case": "qft_n28", "what": "the QFT of a basis state, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 41.8, 32.8, 25.8 ], "load_after": [ 38.5, 33.8, 26.7 ], "seconds_min": 11.903403471922502, "seconds_median": 12.699389511952177, "wall_median": 13.984967238968238, "peak_rss_mib": 2233.7, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 38.5, 33.8, 26.7 ], "load_after": [ 38.5, 33.8, 26.7 ], "seconds_min": 0.076106439, "seconds_median": 0.096317108, "wall_median": 0.15429398883134127, "peak_rss_mib": 27.1, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 590, "settings": null }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 38.5, 33.8, 26.7 ], "load_after": [ 40.0, 34.2, 26.9 ], "seconds_min": 1.062648629, "seconds_median": 1.357204142, "wall_median": 1.8056088739540428, "peak_rss_mib": 120.2, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 591, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 1.3645012800116092 }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 40.0, 34.2, 26.9 ], "load_after": [ 38.4, 34.2, 27.1 ], "seconds_min": 1.2194258298259228, "seconds_median": 1.4169413330964744, "wall_median": 3.05785815580748, "peak_rss_mib": 194.7, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "quimb.dense", "cpus": 32, "threads": "not set", "timer": "the building of the circuit object, which applies each gate as it is added, and the read-out", "load_before": [ 38.4, 34.2, 27.1 ], "load_after": [ 54.5, 40.5, 30.0 ], "seconds_min": 9.502541110152379, "seconds_median": 15.6902132879477, "wall_median": 16.13380013103597, "peak_rss_mib": 290.5, "baseline_rss_mib": 195.3, "repeats": 5, "ops": null, "settings": { "arithmetic": "double" } }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 54.5, 40.5, 30.0 ], "load_after": [ 52.2, 40.2, 30.0 ], "seconds_min": 0.480531828, "seconds_median": 0.612655067, "wall_median": 0.6725332771893591, "peak_rss_mib": 23.2, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 590, "settings": null }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 52.2, 40.2, 30.0 ], "load_after": [ 50.1, 40.0, 30.0 ], "seconds_min": 0.708930065, "seconds_median": 0.876222532, "wall_median": 1.4274295109789819, "peak_rss_mib": 120.2, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 591, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.8851245020050555 }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 50.1, 40.0, 30.0 ], "load_after": [ 45.3, 39.3, 29.8 ], "seconds_min": 0.0436721530277282, "seconds_median": 0.04577008821070194, "wall_median": 1.8744025151245296, "peak_rss_mib": 196.1, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "rotations_n20", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "quimb.dense", "cpus": 1, "threads": "1 (pinned)", "timer": "the building of the circuit object, which applies each gate as it is added, and the read-out", "load_before": [ 45.3, 39.3, 29.8 ], "load_after": [ 38.4, 38.1, 29.6 ], "seconds_min": 2.1960018498357385, "seconds_median": 2.254164526006207, "wall_median": 2.5679360730573535, "peak_rss_mib": 276.3, "baseline_rss_mib": 195.3, "repeats": 5, "ops": null, "settings": { "arithmetic": "double" } }, { "case": "rotations_n24", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 38.4, 38.1, 29.6 ], "load_after": [ 37.3, 37.9, 29.6 ], "seconds_min": 0.869147146, "seconds_median": 0.892136317, "wall_median": 0.96001604385674, "peak_rss_mib": 282.4, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 710, "settings": null }, { "case": "rotations_n24", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 37.3, 37.9, 29.6 ], "load_after": [ 38.9, 38.2, 29.8 ], "seconds_min": 2.439098155, "seconds_median": 2.653684981, "wall_median": 3.0647755700629205, "peak_rss_mib": 356.1, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 711, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 2.6625985829159617 }, { "case": "rotations_n24", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 38.9, 38.2, 29.8 ], "load_after": [ 38.1, 38.0, 29.9 ], "seconds_min": 1.5199392409995198, "seconds_median": 1.7068204309325665, "wall_median": 3.178407259983942, "peak_rss_mib": 314.8, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "rotations_n24", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 38.1, 38.0, 29.9 ], "load_after": [ 21.1, 33.3, 28.8 ], "seconds_min": 9.724723818, "seconds_median": 10.443660408, "wall_median": 10.572012909920886, "peak_rss_mib": 263.3, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 710, "settings": null }, { "case": "rotations_n24", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 21.1, 33.3, 28.8 ], "load_after": [ 13.5, 27.8, 27.2 ], "seconds_min": 13.253008954, "seconds_median": 15.100221646, "wall_median": 15.534065149025992, "peak_rss_mib": 356.4, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 711, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 15.107174230972305 }, { "case": "rotations_n24", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 13.5, 27.8, 27.2 ], "load_after": [ 13.6, 27.2, 27.0 ], "seconds_min": 1.5246450169943273, "seconds_median": 1.5389518139418215, "wall_median": 3.2307072351686656, "peak_rss_mib": 316.2, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "rotations_n26", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 13.6, 27.2, 27.0 ], "load_after": [ 23.3, 28.4, 27.4 ], "seconds_min": 3.939057263, "seconds_median": 4.115484049, "wall_median": 4.294383759144694, "peak_rss_mib": 1050.4, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 770, "settings": null }, { "case": "rotations_n26", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 23.3, 28.4, 27.4 ], "load_after": [ 33.4, 30.3, 28.1 ], "seconds_min": 7.997076223, "seconds_median": 8.703560745, "wall_median": 9.0855045709759, "peak_rss_mib": 1123.0, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 771, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 8.712597168050706 }, { "case": "rotations_n26", "what": "20 layers of arbitrary U gates on a brickwork of cx, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 33.4, 30.3, 28.1 ], "load_after": [ 35.5, 31.1, 28.5 ], "seconds_min": 4.067482802085578, "seconds_median": 4.149782038060948, "wall_median": 5.802151598967612, "peak_rss_mib": 699.9, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 35.5, 31.1, 28.5 ], "load_after": [ 35.5, 31.1, 28.5 ], "seconds_min": 0.000871367, "seconds_median": 0.000998488, "wall_median": 0.03542611305601895, "peak_rss_mib": 6.1, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 114, "settings": null }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "wai.exact", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 35.5, 31.1, 28.5 ], "load_after": [ 35.5, 31.1, 28.5 ], "seconds_min": 0.033127548, "seconds_median": 0.036294745, "wall_median": 0.08151104697026312, "peak_rss_mib": 17.0, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 26686, "settings": null }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "wai.exact_whole", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 35.5, 31.1, 28.5 ], "load_after": [ 35.5, 31.1, 28.5 ], "seconds_min": 0.000161676, "seconds_median": 0.00019539, "wall_median": 0.03377820807509124, "peak_rss_mib": 5.7, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 114, "settings": null }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 35.5, 31.1, 28.5 ], "load_after": [ 35.5, 31.1, 28.5 ], "seconds_min": 0.000292673, "seconds_median": 0.000298153, "wall_median": 0.4433013030793518, "peak_rss_mib": 99.8, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 123, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.002038022968918085 }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 35.5, 31.1, 28.5 ], "load_after": [ 33.5, 30.9, 28.4 ], "seconds_min": 0.0012910808436572552, "seconds_median": 0.001400817884132266, "wall_median": 1.4683689950034022, "peak_rss_mib": 187.8, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "ddsim.statevector", "cpus": 32, "threads": "not set", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 33.5, 30.9, 28.4 ], "load_after": [ 33.5, 30.9, 28.4 ], "seconds_min": 0.006090824957937002, "seconds_median": 0.008831375045701861, "wall_median": 0.39679693593643606, "peak_rss_mib": 99.5, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 33.5, 30.9, 28.4 ], "load_after": [ 33.5, 30.9, 28.4 ], "seconds_min": 0.000321458, "seconds_median": 0.000446063, "wall_median": 0.04154697502963245, "peak_rss_mib": 6.1, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 114, "settings": null }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "wai.exact", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 33.5, 30.9, 28.4 ], "load_after": [ 33.5, 30.9, 28.4 ], "seconds_min": 0.031739634, "seconds_median": 0.050740144, "wall_median": 0.09986691898666322, "peak_rss_mib": 17.1, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 26686, "settings": null }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "wai.exact_whole", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 33.5, 30.9, 28.4 ], "load_after": [ 31.6, 30.5, 28.3 ], "seconds_min": 0.000270691, "seconds_median": 0.000272696, "wall_median": 0.03980947006493807, "peak_rss_mib": 5.6, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 114, "settings": null }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 31.6, 30.5, 28.3 ], "load_after": [ 31.6, 30.5, 28.3 ], "seconds_min": 0.000289026, "seconds_median": 0.000298484, "wall_median": 0.42843495798297226, "peak_rss_mib": 99.5, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 123, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.0019329849164932966 }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 31.6, 30.5, 28.3 ], "load_after": [ 29.7, 30.1, 28.2 ], "seconds_min": 0.0012752609327435493, "seconds_median": 0.0013666129671037197, "wall_median": 1.3309547950048, "peak_rss_mib": 187.1, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n10", "what": "two Grover iterations on 10 qubits: four Z gates under 9 controls, the whole state", "engine": "ddsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 29.7, 30.1, 28.2 ], "load_after": [ 27.8, 29.7, 28.1 ], "seconds_min": 0.005801336839795113, "seconds_median": 0.007423603907227516, "wall_median": 0.3407132800202817, "peak_rss_mib": 99.6, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 27.8, 29.7, 28.1 ], "load_after": [ 27.8, 29.7, 28.1 ], "seconds_min": 0.002270722, "seconds_median": 0.002408814, "wall_median": 0.03328279103152454, "peak_rss_mib": 6.1, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 158, "settings": null }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "wai.exact", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 27.8, 29.7, 28.1 ], "load_after": [ 14.9, 25.8, 26.8 ], "seconds_min": 10.570036884, "seconds_median": 11.398451636, "wall_median": 11.510994809912518, "peak_rss_mib": 242.1, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 557146, "settings": null }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "wai.exact_whole", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 14.9, 25.8, 26.8 ], "load_after": [ 14.9, 25.8, 26.8 ], "seconds_min": 0.003523662, "seconds_median": 0.00353885, "wall_median": 0.035804808838292956, "peak_rss_mib": 6.0, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 158, "settings": null }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 14.9, 25.8, 26.8 ], "load_after": [ 14.9, 25.8, 26.8 ], "seconds_min": 0.002862011, "seconds_median": 0.002982228, "wall_median": 0.38463826989755034, "peak_rss_mib": 100.3, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 167, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.005920422961935401 }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 14.9, 25.8, 26.8 ], "load_after": [ 14.7, 25.4, 26.7 ], "seconds_min": 0.06611253600567579, "seconds_median": 0.07728353491984308, "wall_median": 1.485958981094882, "peak_rss_mib": 188.3, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "ddsim.statevector", "cpus": 32, "threads": "not set", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 14.7, 25.4, 26.7 ], "load_after": [ 14.7, 25.4, 26.7 ], "seconds_min": 0.006599165964871645, "seconds_median": 0.006720455130562186, "wall_median": 0.32042276998981833, "peak_rss_mib": 99.4, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 14.7, 25.4, 26.7 ], "load_after": [ 14.7, 25.4, 26.7 ], "seconds_min": 0.001561883, "seconds_median": 0.002250595, "wall_median": 0.03333546104840934, "peak_rss_mib": 6.2, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 158, "settings": null }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "wai.exact", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 14.7, 25.4, 26.7 ], "load_after": [ 12.9, 22.1, 25.4 ], "seconds_min": 13.809764521, "seconds_median": 17.388288616, "wall_median": 17.53544146893546, "peak_rss_mib": 242.5, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 557146, "settings": null }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "wai.exact_whole", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 12.9, 22.1, 25.4 ], "load_after": [ 12.9, 22.1, 25.4 ], "seconds_min": 0.003399416, "seconds_median": 0.003428351, "wall_median": 0.03344071004539728, "peak_rss_mib": 6.1, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 158, "settings": null }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 12.9, 22.1, 25.4 ], "load_after": [ 12.9, 22.1, 25.4 ], "seconds_min": 0.002812237, "seconds_median": 0.002956379, "wall_median": 0.34251601807773113, "peak_rss_mib": 99.9, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 167, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.0048292099963873625 }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 12.9, 22.1, 25.4 ], "load_after": [ 12.7, 21.7, 25.2 ], "seconds_min": 0.0018000230193138123, "seconds_median": 0.0018039708957076073, "wall_median": 1.326029323041439, "peak_rss_mib": 187.1, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n14", "what": "two Grover iterations on 14 qubits: four Z gates under 13 controls, the whole state", "engine": "ddsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 12.7, 21.7, 25.2 ], "load_after": [ 12.7, 21.7, 25.2 ], "seconds_min": 0.007061729906126857, "seconds_median": 0.00729728490114212, "wall_median": 0.323946411954239, "peak_rss_mib": 100.1, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 12.7, 21.7, 25.2 ], "load_after": [ 12.7, 21.7, 25.2 ], "seconds_min": 0.008301384, "seconds_median": 0.008567207, "wall_median": 0.03873729286715388, "peak_rss_mib": 7.0, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 180, "settings": null }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "wai.exact_whole", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 12.7, 21.7, 25.2 ], "load_after": [ 12.7, 21.7, 25.2 ], "seconds_min": 0.016243879, "seconds_median": 0.016859042, "wall_median": 0.048509076004847884, "peak_rss_mib": 7.4, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 180, "settings": null }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 12.7, 21.7, 25.2 ], "load_after": [ 15.2, 22.1, 25.3 ], "seconds_min": 0.437109748, "seconds_median": 0.462122384, "wall_median": 0.8533250140026212, "peak_rss_mib": 101.0, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 189, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.46506099915131927 }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 15.2, 22.1, 25.3 ], "load_after": [ 15.1, 21.8, 25.2 ], "seconds_min": 0.28787665208801627, "seconds_median": 0.328045261092484, "wall_median": 1.794903903035447, "peak_rss_mib": 188.6, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "ddsim.statevector", "cpus": 32, "threads": "not set", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 15.1, 21.8, 25.2 ], "load_after": [ 15.1, 21.8, 25.2 ], "seconds_min": 0.008495290065184236, "seconds_median": 0.008746334817260504, "wall_median": 0.3276845689397305, "peak_rss_mib": 101.3, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.1, 21.8, 25.2 ], "load_after": [ 15.1, 21.8, 25.2 ], "seconds_min": 0.009596722, "seconds_median": 0.009645284, "wall_median": 0.051382589153945446, "peak_rss_mib": 7.1, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 180, "settings": null }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "wai.exact_whole", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.1, 21.8, 25.2 ], "load_after": [ 15.1, 21.8, 25.2 ], "seconds_min": 0.02692912, "seconds_median": 0.028110523, "wall_median": 0.06900853081606328, "peak_rss_mib": 7.5, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 180, "settings": null }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 15.1, 21.8, 25.2 ], "load_after": [ 14.6, 21.6, 25.1 ], "seconds_min": 0.01824391, "seconds_median": 0.01861975, "wall_median": 0.4461652368772775, "peak_rss_mib": 101.1, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 189, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.02155522000975907 }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 14.6, 21.6, 25.1 ], "load_after": [ 14.4, 21.5, 25.1 ], "seconds_min": 0.002342988969758153, "seconds_median": 0.003421338042244315, "wall_median": 1.6181818689219654, "peak_rss_mib": 187.6, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n16", "what": "two Grover iterations on 16 qubits: four Z gates under 15 controls, the whole state", "engine": "ddsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 14.4, 21.5, 25.1 ], "load_after": [ 14.2, 21.3, 25.0 ], "seconds_min": 0.0113413508515805, "seconds_median": 0.011489191092550755, "wall_median": 0.3813317590393126, "peak_rss_mib": 101.8, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "wai.statevector", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 14.2, 21.3, 25.0 ], "load_after": [ 14.2, 21.3, 25.0 ], "seconds_min": 0.025917898, "seconds_median": 0.026761302, "wall_median": 0.061749236891046166, "peak_rss_mib": 25.4, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 224, "settings": null }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "wai.exact_whole", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 14.2, 21.3, 25.0 ], "load_after": [ 14.2, 21.3, 25.0 ], "seconds_min": 0.338834778, "seconds_median": 0.34014233, "wall_median": 0.37980534392409027, "peak_rss_mib": 37.6, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 224, "settings": null }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "aer.statevector", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 14.2, 21.3, 25.0 ], "load_after": [ 16.7, 21.7, 25.1 ], "seconds_min": 0.609960282, "seconds_median": 0.7202893, "wall_median": 1.198138965992257, "peak_rss_mib": 123.7, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 233, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.7242160839959979 }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "qsim.statevector", "cpus": 32, "threads": "32", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 16.7, 21.7, 25.1 ], "load_after": [ 16.6, 21.5, 25.0 ], "seconds_min": 0.31644802703522146, "seconds_median": 0.42887247586622834, "wall_median": 1.8360954958479851, "peak_rss_mib": 195.2, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "ddsim.statevector", "cpus": 32, "threads": "not set", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 16.6, 21.5, 25.0 ], "load_after": [ 16.5, 21.4, 24.9 ], "seconds_min": 0.032453111838549376, "seconds_median": 0.033221054123714566, "wall_median": 0.3732121391221881, "peak_rss_mib": 131.9, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "wai.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 16.5, 21.4, 24.9 ], "load_after": [ 16.5, 21.4, 24.9 ], "seconds_min": 0.203661432, "seconds_median": 0.204090624, "wall_median": 0.25193604710511863, "peak_rss_mib": 22.4, "baseline_rss_mib": 5.4, "repeats": 5, "ops": 224, "settings": null }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "wai.exact_whole", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 16.5, 21.4, 24.9 ], "load_after": [ 16.5, 21.4, 24.9 ], "seconds_min": 0.582696269, "seconds_median": 0.585904504, "wall_median": 0.6418352420441806, "peak_rss_mib": 37.6, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 224, "settings": null }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "aer.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 16.5, 21.4, 24.9 ], "load_after": [ 16.2, 21.3, 24.9 ], "seconds_min": 0.349512514, "seconds_median": 0.350111146, "wall_median": 0.8460638271644711, "peak_rss_mib": 123.7, "baseline_rss_mib": 99.6, "repeats": 5, "ops": 233, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.35361613309942186 }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "qsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the simulate call, which converts the circuit to its own form inside it", "load_before": [ 16.2, 21.3, 24.9 ], "load_after": [ 15.5, 21.0, 24.7 ], "seconds_min": 0.013281078077852726, "seconds_median": 0.01605776697397232, "wall_median": 1.6645793339703232, "peak_rss_mib": 194.9, "baseline_rss_mib": 187.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "single", "fusion": 2 } }, { "case": "grover_n20", "what": "two Grover iterations on 20 qubits: four Z gates under 19 controls, the whole state", "engine": "ddsim.statevector", "cpus": 1, "threads": "1 (pinned)", "timer": "the run call, which converts the circuit to its own form inside it", "load_before": [ 15.5, 21.0, 24.7 ], "load_after": [ 15.5, 21.0, 24.7 ], "seconds_min": 0.031964859925210476, "seconds_median": 0.0422643709462136, "wall_median": 0.44296720111742616, "peak_rss_mib": 132.1, "baseline_rss_mib": 98.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "decision diagram, double" } }, { "case": "clifford_n1000", "what": "random Clifford layers: the tableau, and its stabilizer group read out", "engine": "wai.stabilizer", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.5, 21.0, 24.7 ], "load_after": [ 15.6, 20.9, 24.7 ], "seconds_min": 0.000960646, "seconds_median": 0.00096797, "wall_median": 0.18389528500847518, "peak_rss_mib": 89.7, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 35082, "settings": null }, { "case": "clifford_n1000", "what": "random Clifford layers: the tableau, and its stabilizer group read out", "engine": "stim.tableau", "cpus": 32, "threads": "not set", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 15.6, 20.9, 24.7 ], "load_after": [ 15.6, 20.9, 24.7 ], "seconds_min": 0.001259129960089922, "seconds_median": 0.0020018338691443205, "wall_median": 0.07897943095304072, "peak_rss_mib": 40.3, "baseline_rss_mib": 24.0, "repeats": 5, "ops": null, "settings": null }, { "case": "clifford_n1000", "what": "random Clifford layers: the tableau, and its stabilizer group read out", "engine": "aer.stabilizer", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 15.6, 20.9, 24.7 ], "load_after": [ 15.7, 20.8, 24.6 ], "seconds_min": 0.016055142, "seconds_median": 0.018432437, "wall_median": 0.9684262538794428, "peak_rss_mib": 207.0, "baseline_rss_mib": 121.2, "repeats": 5, "ops": 35083, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.26302404911257327 }, { "case": "clifford_n5000", "what": "random Clifford layers: the tableau, and its stabilizer group read out", "engine": "wai.stabilizer", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.9, 20.7, 24.6 ], "load_after": [ 15.6, 20.5, 24.5 ], "seconds_min": 0.006546075, "seconds_median": 0.006659519, "wall_median": 1.2397909800056368, "peak_rss_mib": 142.2, "baseline_rss_mib": 5.1, "repeats": 5, "ops": 58265, "settings": null }, { "case": "clifford_n5000", "what": "random Clifford layers: the tableau, and its stabilizer group read out", "engine": "stim.tableau", "cpus": 32, "threads": "not set", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 15.6, 20.5, 24.5 ], "load_after": [ 15.6, 20.5, 24.5 ], "seconds_min": 0.00828662607818842, "seconds_median": 0.008386354893445969, "wall_median": 0.07571755396202207, "peak_rss_mib": 64.6, "baseline_rss_mib": 24.0, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d5_sample", "what": "the rotated surface-code memory experiment, d = rounds = 5, p = 0.001: 10^6 shots of every detector", "engine": "wai.qec", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.6, 20.5, 24.5 ], "load_after": [ 15.7, 20.5, 24.5 ], "seconds_min": 0.073682597, "seconds_median": 0.076227498, "wall_median": 0.11090970505028963, "peak_rss_mib": 19.2, "baseline_rss_mib": 4.4, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d5_sample", "what": "the rotated surface-code memory experiment, d = rounds = 5, p = 0.001: 10^6 shots of every detector", "engine": "stim.tableau", "cpus": 32, "threads": "not set", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 15.7, 20.5, 24.5 ], "load_after": [ 15.7, 20.5, 24.5 ], "seconds_min": 0.336888408055529, "seconds_median": 0.34840901917777956, "wall_median": 0.3870515520684421, "peak_rss_mib": 160.3, "baseline_rss_mib": 37.9, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d5_sample", "what": "the rotated surface-code memory experiment, d = rounds = 5, p = 0.001: 10^6 shots of every detector", "engine": "wai.qec", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.7, 20.5, 24.5 ], "load_after": [ 15.7, 20.5, 24.5 ], "seconds_min": 0.081201973, "seconds_median": 0.094885392, "wall_median": 0.14612856600433588, "peak_rss_mib": 19.1, "baseline_rss_mib": 4.4, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d5_sample", "what": "the rotated surface-code memory experiment, d = rounds = 5, p = 0.001: 10^6 shots of every detector", "engine": "stim.tableau", "cpus": 1, "threads": "1 (pinned)", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 15.7, 20.5, 24.5 ], "load_after": [ 15.5, 20.4, 24.4 ], "seconds_min": 0.2732418349478394, "seconds_median": 0.2924724610056728, "wall_median": 0.3322621430270374, "peak_rss_mib": 160.4, "baseline_rss_mib": 37.9, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d5_model", "what": "the same circuit's detector error model", "engine": "wai.qec", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.5, 20.4, 24.4 ], "load_after": [ 15.5, 20.4, 24.4 ], "seconds_min": 0.001823658, "seconds_median": 0.001849446, "wall_median": 0.035269948188215494, "peak_rss_mib": 6.6, "baseline_rss_mib": 4.7, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d5_model", "what": "the same circuit's detector error model", "engine": "stim.tableau", "cpus": 32, "threads": "not set", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 15.5, 20.4, 24.4 ], "load_after": [ 15.5, 20.4, 24.4 ], "seconds_min": 0.0031853618565946817, "seconds_median": 0.0032123029232025146, "wall_median": 0.039440922904759645, "peak_rss_mib": 25.9, "baseline_rss_mib": 24.9, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d11_sample", "what": "the rotated surface-code memory experiment, d = rounds = 11, p = 0.001: 10^6 shots of every detector", "engine": "wai.qec", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 15.5, 20.4, 24.4 ], "load_after": [ 15.5, 20.3, 24.3 ], "seconds_min": 0.811216779, "seconds_median": 0.81693564, "wall_median": 0.8699568170122802, "peak_rss_mib": 162.8, "baseline_rss_mib": 4.4, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d11_sample", "what": "the rotated surface-code memory experiment, d = rounds = 11, p = 0.001: 10^6 shots of every detector", "engine": "stim.tableau", "cpus": 32, "threads": "not set", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 15.5, 20.3, 24.3 ], "load_after": [ 16.8, 20.3, 24.3 ], "seconds_min": 3.05294326110743, "seconds_median": 3.1907607850153, "wall_median": 3.2426636379677802, "peak_rss_mib": 853.0, "baseline_rss_mib": 37.9, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d11_sample", "what": "the rotated surface-code memory experiment, d = rounds = 11, p = 0.001: 10^6 shots of every detector", "engine": "wai.qec", "cpus": 1, "threads": "1 (pinned)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 16.8, 20.3, 24.3 ], "load_after": [ 16.8, 20.3, 24.3 ], "seconds_min": 1.061255658, "seconds_median": 1.064781924, "wall_median": 1.1391144799999893, "peak_rss_mib": 163.2, "baseline_rss_mib": 4.4, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d11_sample", "what": "the rotated surface-code memory experiment, d = rounds = 11, p = 0.001: 10^6 shots of every detector", "engine": "stim.tableau", "cpus": 1, "threads": "1 (pinned)", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 16.8, 20.3, 24.3 ], "load_after": [ 16.8, 20.1, 24.1 ], "seconds_min": 3.3319505560211837, "seconds_median": 4.0454179579392076, "wall_median": 4.097602071939036, "peak_rss_mib": 853.0, "baseline_rss_mib": 37.9, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d11_model", "what": "the same circuit's detector error model", "engine": "wai.qec", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 16.8, 20.1, 24.1 ], "load_after": [ 16.8, 20.1, 24.1 ], "seconds_min": 0.037329562, "seconds_median": 0.044237692, "wall_median": 0.19571422901935875, "peak_rss_mib": 26.3, "baseline_rss_mib": 4.7, "repeats": 5, "ops": null, "settings": null }, { "case": "surface_z_d11_model", "what": "the same circuit's detector error model", "engine": "stim.tableau", "cpus": 32, "threads": "not set", "timer": "the tableau's or sampler's run, after the circuit text is parsed", "load_before": [ 16.8, 20.1, 24.1 ], "load_after": [ 16.8, 20.1, 24.1 ], "seconds_min": 0.05090163997374475, "seconds_median": 0.05421179812401533, "wall_median": 0.2042501859832555, "peak_rss_mib": 40.1, "baseline_rss_mib": 24.9, "repeats": 5, "ops": null, "settings": null }, { "case": "qft_n40_amplitudes", "what": "six amplitudes of the 40-qubit QFT of a basis state", "engine": "wai.mps", "cpus": 32, "threads": "1 (no threads)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 16.8, 20.1, 24.1 ], "load_after": [ 16.8, 20.1, 24.1 ], "seconds_min": 0.010733892, "seconds_median": 0.011400673, "wall_median": 0.048357530031353235, "peak_rss_mib": 10.8, "baseline_rss_mib": 6.9, "repeats": 5, "ops": null, "settings": null }, { "case": "qft_n40_amplitudes", "what": "six amplitudes of the 40-qubit QFT of a basis state", "engine": "aer.mps", "cpus": 32, "threads": "32", "timer": "the simulator's own time for the experiment, as its result states it (time_taken); the conversion of the circuit to its own form is outside it", "load_before": [ 16.8, 20.1, 24.1 ], "load_after": [ 16.6, 20.0, 24.0 ], "seconds_min": 0.003521617, "seconds_median": 0.003707509, "wall_median": 0.44125557504594326, "peak_rss_mib": 104.8, "baseline_rss_mib": 99.2, "repeats": 5, "ops": 861, "settings": { "precision": "double", "fusion_threshold": 14, "fusion_max_qubit": 5 }, "call_seconds_median": 0.024640131974592805 }, { "case": "qft_n40_amplitudes", "what": "six amplitudes of the 40-qubit QFT of a basis state", "engine": "quimb.mps", "cpus": 32, "threads": "not set", "timer": "the building of the circuit object, which applies each gate as it is added, and the read-out", "load_before": [ 16.6, 20.0, 24.0 ], "load_after": [ 18.2, 20.2, 24.1 ], "seconds_min": 1.9147113889921457, "seconds_median": 1.9823482669889927, "wall_median": 2.334238967858255, "peak_rss_mib": 206.1, "baseline_rss_mib": 199.6, "repeats": 5, "ops": null, "settings": { "arithmetic": "double", "cutoff": 1e-28, "cutoff_mode": "sum2" } }, { "case": "qft_n40_amplitudes", "what": "six amplitudes of the 40-qubit QFT of a basis state", "engine": "wai.tensor_network", "cpus": 32, "threads": "all (32)", "timer": "the engine's run, after the program is read and lowered (the driver's own clock)", "load_before": [ 18.2, 20.2, 24.1 ], "load_after": [ 17.9, 20.1, 24.0 ], "seconds_min": 0.150195395, "seconds_median": 0.154935576, "wall_median": 0.18955340096727014, "peak_rss_mib": 11.7, "baseline_rss_mib": 7.1, "repeats": 5, "ops": null, "settings": null }, { "case": "qft_n40_amplitudes", "what": "six amplitudes of the 40-qubit QFT of a basis state", "engine": "quimb.tensor_network", "cpus": 32, "threads": "not set", "timer": "the building of the circuit object, which applies each gate as it is added, and the read-out", "load_before": [ 17.9, 20.1, 24.0 ], "load_after": [ 17.8, 20.1, 24.0 ], "seconds_min": 0.9614916029386222, "seconds_median": 1.0793769359588623, "wall_median": 1.4489895799197257, "peak_rss_mib": 219.8, "baseline_rss_mib": 204.7, "repeats": 5, "ops": null, "settings": { "arithmetic": "double" } } ] }