{ "cells": [ { "cell_type": "markdown", "id": "a3082d18-56df-4834-8963-586a5500bced", "metadata": { "editable": true, "papermill": { "duration": 0.001988, "end_time": "2025-01-30T07:29:34.595381", "exception": false, "start_time": "2025-01-30T07:29:34.593393", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# Decoding Speed" ] }, { "cell_type": "code", "execution_count": 1, "id": "afceb91f-5b83-487f-96f9-5015002f5daf", "metadata": { "editable": true, "papermill": { "duration": 0.008627, "end_time": "2025-01-30T07:29:34.605719", "exception": false, "start_time": "2025-01-30T07:29:34.597092", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [ "parameters" ] }, "outputs": [], "source": [ "# This cell is tagged `parameters` and will be override by `papermill`\n", "decoder: str = \"mwpm\"\n", "json_filename: str = \"speed-rsc-mwpm.json\" # where to save the result, must be provided\n", "\n", "rounds: int = 200\n", "kwargs = dict(\n", " min_time = 60,\n", " min_shots = 50,\n", " min_init_time = 0.1,\n", " min_init_shots = 1,\n", ")\n", "max_per_round_time: float = 0.1 # if each round takes more than 100ms to decode, then do not run the next `d`, since it is not meaningful anymore" ] }, { "cell_type": "code", "execution_count": 2, "id": "5e4bf8f4-0e7c-453e-aacd-18c9061a999c", "metadata": { "editable": true, "papermill": { "duration": 0.01248, "end_time": "2025-01-30T07:29:34.619344", "exception": false, "start_time": "2025-01-30T07:29:34.606864", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 3, "id": "552dcc10-a319-487b-a20b-09221382176b", "metadata": { "editable": true, "papermill": { "duration": 0.009686, "end_time": "2025-01-30T07:29:34.630239", "exception": false, "start_time": "2025-01-30T07:29:34.620553", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "# import psutil\n", "# psutil.Process().nice(0)# if on *ux\n", "# psutil.Process().nice(psutil.IDLE_PRIORITY_CLASS)# if on win" ] }, { "cell_type": "code", "execution_count": 4, "id": "f4ce38b6-65b8-4ec5-b097-aab9f6943e10", "metadata": { "editable": true, "papermill": { "duration": 1.617702, "end_time": "2025-01-30T07:29:36.249203", "exception": false, "start_time": "2025-01-30T07:29:34.631501", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "from qec_lego_bench.cli.decoding_speed import decoding_speed, DecodingSpeedResult\n", "from qec_lego_bench.hpc.job_store import Job, JobStore\n", "from qec_lego_bench.hpc.plotter.logical_error_rate_plotter import *" ] }, { "cell_type": "code", "execution_count": 5, "id": "2eb79028-afab-46a7-a36e-f567fd486716", "metadata": { "editable": true, "papermill": { "duration": 6.491517, "end_time": "2025-01-30T07:29:42.742065", "exception": false, "start_time": "2025-01-30T07:29:36.250548", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "d_vec: [3, 5, 7, 9, 11, 13, 15, 17, 19, 23, 27, 31, 37, 43, 51]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 4 shots, elapsed: 0.001444s, average: 3.610e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 8 shots, elapsed: 0.002802s, average: 3.503e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 16 shots, elapsed: 0.005371s, average: 3.357e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 32 shots, elapsed: 0.010849s, average: 3.390e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 64 shots, elapsed: 0.021586s, average: 3.373e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 128 shots, elapsed: 0.042899s, average: 3.352e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 256 shots, elapsed: 0.084741s, average: 3.310e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating initialization of 512 shots, elapsed: 0.172093s, average: 3.361e-04s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "initialization time: 3.361e-04s\n", "\r\n", "\u001b[KEvaluating decoding of 50 shots, elapsed: 0.000042s, average: 8.376e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 100 shots, elapsed: 0.000077s, average: 7.738e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 200 shots, elapsed: 0.000254s, average: 1.268e-06s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 400 shots, elapsed: 0.000262s, average: 6.541e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 800 shots, elapsed: 0.000097s, average: 1.213e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 1600 shots, elapsed: 0.000191s, average: 1.192e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 3200 shots, elapsed: 0.000346s, average: 1.082e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 6400 shots, elapsed: 0.000763s, average: 1.192e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 12800 shots, elapsed: 0.001453s, average: 1.135e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 25600 shots, elapsed: 0.003121s, average: 1.219e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 51200 shots, elapsed: 0.006096s, average: 1.191e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 102400 shots, elapsed: 0.011889s, average: 1.161e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 204800 shots, elapsed: 0.022888s, average: 1.118e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 409600 shots, elapsed: 0.045146s, average: 1.102e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 819200 shots, elapsed: 0.089546s, average: 1.093e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 1638400 shots, elapsed: 0.178770s, average: 1.091e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 3276800 shots, elapsed: 0.388312s, average: 1.185e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 6553600 shots, elapsed: 0.721846s, average: 1.101e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\u001b[KEvaluating decoding of 10000000 shots, elapsed: 1.098042s, average: 1.098e-07s per shot\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "decoding time: 1.098e-07s\n" ] }, { "data": { "text/plain": [ "DecodingSpeedResult(elapsed=1.098041715319141, shots=10000000)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def generate_d_vec(ratio: float = 1.18, max_d: int = 51) -> list[int]:\n", " d = 3\n", " d_vec = [d]\n", " while d <= max_d:\n", " int_d = 2 * round(d / 2) + 1\n", " if int_d != d_vec[-1]:\n", " d_vec.append(int_d)\n", " d *= ratio\n", " return d_vec\n", "d_vec = generate_d_vec()\n", "print(\"d_vec:\", d_vec)\n", "p_vec = [0.00001, 0.0001, 0.001, 0.003, 0.01]\n", "\n", "def evaluation_function(d: int, p: float, rounds: int, verbose: bool = True) -> DecodingSpeedResult:\n", " if verbose:\n", " print(f\"d: {d}, p: {p}\")\n", " return decoding_speed(decoder=decoder, code=f\"rsc(d={d},p={p})\", **kwargs, no_print=not verbose)\n", "\n", "jobs = [Job(d=d, p=p, rounds=rounds) for p in p_vec for d in d_vec[:1]] # only add the smallest d and dynamically add others\n", "# evaluation_function(min(d_vec), min(p_vec), rounds)" ] }, { "cell_type": "markdown", "id": "ebd460d0-efa9-4075-9a1d-a62791230623", "metadata": { "editable": true, "papermill": { "duration": 0.002051, "end_time": "2025-01-30T07:29:42.746514", "exception": false, "start_time": "2025-01-30T07:29:42.744463", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "Define the plot functionality" ] }, { "cell_type": "code", "execution_count": 6, "id": "aea5f255-0cca-4a5b-a43d-f5d4b460d502", "metadata": { "editable": true, "papermill": { "duration": 0.02126, "end_time": "2025-01-30T07:29:42.769773", "exception": false, "start_time": "2025-01-30T07:29:42.748513", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from decoding_time_plotter import DecodingTimePlotter\n", "\n", "plotter = DecodingTimePlotter(p_vec=p_vec, d_vec=d_vec, rounds=rounds, max_per_round_time=max_per_round_time)" ] }, { "cell_type": "code", "execution_count": 7, "id": "1cfa5901-2d84-4321-90e2-220ac77b9da1", "metadata": { "editable": true, "papermill": { "duration": 0.44773, "end_time": "2025-01-30T07:29:43.219716", "exception": false, "start_time": "2025-01-30T07:29:42.771986", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "job_store = JobStore(evaluation_function, jobs, result_type=DecodingSpeedResult, filename=json_filename)\n", "job_store.execute(loop_callback=plotter)" ] }, { "cell_type": "code", "execution_count": null, "id": "a2edb553-f1b5-41ba-9643-86978a83b3e8", "metadata": { "editable": true, "papermill": { "duration": 0.002417, "end_time": "2025-01-30T07:29:43.224711", "exception": false, "start_time": "2025-01-30T07:29:43.222294", "status": "completed" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.6" }, "papermill": { "default_parameters": {}, "duration": 9.889966, "end_time": "2025-01-30T07:29:43.645094", "environment_variables": {}, "exception": null, "input_path": "decoding_speed_mwpm.ipynb", "output_path": "decoding_speed_mwpm_2.ipynb", "parameters": {}, "start_time": "2025-01-30T07:29:33.755128", "version": "2.6.0" } }, "nbformat": 4, "nbformat_minor": 5 }