From 0dfa8216b1656b2ad606a07cf6582c7d94fa6207 Mon Sep 17 00:00:00 2001 From: Rebecca Dimock Date: Wed, 24 Apr 2024 11:10:07 -0500 Subject: [PATCH 1/3] Hardware recommendations for simulation --- docs/verify/index.mdx | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/docs/verify/index.mdx b/docs/verify/index.mdx index 22c3151204b..9e2fa2fe604 100644 --- a/docs/verify/index.mdx +++ b/docs/verify/index.mdx @@ -6,7 +6,7 @@ description: Introduction to verifying quantum circuits in Qiskit. In the verify phase, you test your quantum programs by running them on simulated devices and exploring their performance under realistic device noise models. This allows you to validate them before sending them to a physical system. -Quantum simulators can be used to help develop and test programs before fine-tuning them and sending them to quantum hardware. Local simulators can do this with good performance and efficiency. +Quantum simulators can be used to help develop and test programs before fine-tuning them and sending them to quantum hardware. Local simulators can do this with good performance and efficiency. Because the cost of classically simulating quantum circuits scales exponentially with the number of qubits, circuits that are larger than 50 qubits or so generally cannot be directly verified. For such circuits, you can: @@ -17,7 +17,17 @@ Stabilizer circuits, also known as Clifford circuits, are a useful tool for acco For general quantum circuits, the following tools are available to verify your quantum programs: -- For simulating circuits when using Qiskit Runtime, use its [local testing mode.](local-testing-mode) +- For simulating circuits when using Qiskit Runtime, use its [local testing mode.](local-testing-mode) - For exact simulation of small quantum circuits, you can use the reference primitives included with Qiskit. See [Exact simulation with Qiskit primitives](simulate-with-qiskit-primitives). - For higher-performance simulation that can handle larger circuits, or to incorporate noise models into your simulation, use [Qiskit Aer](https://qiskit.org/ecosystem/aer/), a project that is part of the [Qiskit Ecosystem](https://qiskit.github.io/ecosystem/). See [Exact and noisy simulation with Qiskit Aer primitives](simulate-with-qiskit-aer) (V1 primitive support only). For V2 primitive support, use the [Qiskit Runtime local testing mode](local-testing-mode) with a Qiskit Aer backend. -- To build custom noise models, use the [`noise`](https://qiskit.org/ecosystem/aer/apidocs/aer_noise.html) module of Qiskit Aer. See [Building noise models](building_noise_models). \ No newline at end of file +- To build custom noise models, use the [`noise`](https://qiskit.org/ecosystem/aer/apidocs/aer_noise.html) module of Qiskit Aer. See [Building noise models](building_noise_models). + +## Hardware considerations + +Several factors impact memory used in quantum simulation, so there are no exact hardware requirements for simulation, but there are some guidelines you can follow. + +- The only requrement for running Qiskit is that there is a functioning Python environment installed. For details, see the [Operating system support](../start/install#operating-system-support) section. +- Because the requirements for simulating quantum circuits scales exponentially with the number of qubits, the available hardware limits the number of qubits that can be simulated. For example, a system with 4GB RAM can simulate approximately 27 qubits. +- More or less available memory will not result in better or worse quality results (assuming results are returned). +- To get the most benefit out of your hardware, use local stabilizer (Clifford) circuit simulation when possible. See [Clifford simulation with Qiskit Runtime local testing mode](local-testing-mode#clifford-simulation) or [Efficient simulation of stabilizer circuits with Qiskit Aer primitives](stabilizer-circuit-simulation) for examples. +- You can increate your computing power by following these instructions to [run with multiple GPUs, nodes, or both.](https://qiskit.github.io/qiskit-aer/howtos/running_gpu.html) \ No newline at end of file From 3e8bd41ae1f8a93127bb2f3101fd9d7da274bb2e Mon Sep 17 00:00:00 2001 From: Rebecca Dimock <66339736+beckykd@users.noreply.github.com> Date: Wed, 24 Apr 2024 12:36:25 -0500 Subject: [PATCH 2/3] Apply suggestions from code review Co-authored-by: abbycross --- docs/verify/index.mdx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/verify/index.mdx b/docs/verify/index.mdx index 9e2fa2fe604..96fecdc2165 100644 --- a/docs/verify/index.mdx +++ b/docs/verify/index.mdx @@ -24,10 +24,10 @@ For general quantum circuits, the following tools are available to verify your q ## Hardware considerations -Several factors impact memory used in quantum simulation, so there are no exact hardware requirements for simulation, but there are some guidelines you can follow. +Several factors impact how much memory quantum simulation requires, so there are no exact hardware requirements for simulation, but there are some guidelines you can follow. -- The only requrement for running Qiskit is that there is a functioning Python environment installed. For details, see the [Operating system support](../start/install#operating-system-support) section. -- Because the requirements for simulating quantum circuits scales exponentially with the number of qubits, the available hardware limits the number of qubits that can be simulated. For example, a system with 4GB RAM can simulate approximately 27 qubits. -- More or less available memory will not result in better or worse quality results (assuming results are returned). +- The only requirement to run Qiskit is a functioning Python environment. For details, see the [Operating system support](../start/install#operating-system-support) section. +- Because the requirements for simulating quantum circuits scale exponentially with the number of qubits, the available hardware limits the number of qubits that can be simulated. For example, a system with 4GB RAM can simulate approximately 27 qubits. +- More or less available memory will not result in better or worse results (assuming results are returned). - To get the most benefit out of your hardware, use local stabilizer (Clifford) circuit simulation when possible. See [Clifford simulation with Qiskit Runtime local testing mode](local-testing-mode#clifford-simulation) or [Efficient simulation of stabilizer circuits with Qiskit Aer primitives](stabilizer-circuit-simulation) for examples. -- You can increate your computing power by following these instructions to [run with multiple GPUs, nodes, or both.](https://qiskit.github.io/qiskit-aer/howtos/running_gpu.html) \ No newline at end of file +- You can increase your computing power by following these instructions to [run with multiple GPUs, nodes, or both.](https://qiskit.github.io/qiskit-aer/howtos/running_gpu.html) \ No newline at end of file From a576eead3a999709893f7c4b31007312ec8de46a Mon Sep 17 00:00:00 2001 From: Rebecca Dimock Date: Wed, 24 Apr 2024 13:43:37 -0500 Subject: [PATCH 3/3] edit --- docs/verify/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/verify/index.mdx b/docs/verify/index.mdx index 96fecdc2165..c531a62a8f3 100644 --- a/docs/verify/index.mdx +++ b/docs/verify/index.mdx @@ -28,6 +28,6 @@ Several factors impact how much memory quantum simulation requires, so there are - The only requirement to run Qiskit is a functioning Python environment. For details, see the [Operating system support](../start/install#operating-system-support) section. - Because the requirements for simulating quantum circuits scale exponentially with the number of qubits, the available hardware limits the number of qubits that can be simulated. For example, a system with 4GB RAM can simulate approximately 27 qubits. -- More or less available memory will not result in better or worse results (assuming results are returned). +- More or less available memory will not result in more or less accurate results (assuming results are returned), although more memory might return results faster or let you simulate more qubits. - To get the most benefit out of your hardware, use local stabilizer (Clifford) circuit simulation when possible. See [Clifford simulation with Qiskit Runtime local testing mode](local-testing-mode#clifford-simulation) or [Efficient simulation of stabilizer circuits with Qiskit Aer primitives](stabilizer-circuit-simulation) for examples. - You can increase your computing power by following these instructions to [run with multiple GPUs, nodes, or both.](https://qiskit.github.io/qiskit-aer/howtos/running_gpu.html) \ No newline at end of file