From 8518b95f9d0f74859f6ba4160559e2b93c633bfc Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 18:18:56 -0700 Subject: [PATCH 01/13] Update choose_hw.md Add information about cuQuantum and multi-GPU simulations. --- docs/choose_hw.md | 184 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 175 insertions(+), 9 deletions(-) diff --git a/docs/choose_hw.md b/docs/choose_hw.md index 3be2bc06..4bd52454 100644 --- a/docs/choose_hw.md +++ b/docs/choose_hw.md @@ -38,22 +38,24 @@ below](#5_consider_multiple_compute_nodes). ### 2. Estimate your memory requirements You can estimate your memory requirements with the following rule of thumb: -$ memory\ required = 8 \cdot 2^N bytes $ for an N-qubit circuit +$ {\rm memory\, required} = 8 \cdot 2^N {\rm bytes} $ for an N-qubit circuit In addition to memory size, consider the bandwidth of your memory. qsim performs best when it can use the maximum number of threads. Multi-threaded simulation benefits from high-bandwidth memory (above 100GB/s). -### 3. Decide between CPUs and GPUs +### 3. Decide among CPUs, single GPUs, or multiple GPUs * GPU hardware starts to outperform CPU hardware significantly (up to 15x faster) for circuits with more than 20 qubits. * The maximum number of qubits that you can simulate with a GPU is limited by - the memory of the GPU. Currently, for a noiseless simulation on an NVIDIA - A100 GPU (with 40GB of memory), the maximum number of qubits is 32. -* For noiseless simulations with 32-40 qubits, you can use CPUs. However, the - runtime time increases exponentially with the number of qubits, and runtimes - are long for simulations above 32 qubits. + the memory of the GPU. For example, for a noiseless simulation on an NVIDIA + A100 GPU with 40GB of memory, the maximum number of qubits is 32. +* However, if you have access to a device with multiple GPUs, you can + pool their memory. For example, with eight 80-GB NVIDIA A100 GPUs (640GB of + total GPU memory), you can simulate up to 36 qubits. Multi-GPU simulations + are supported by [NVIDIA's cuQuantum Appliance](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance), + which acts as a backend for qsim. It is documented [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html). The following charts show the runtime for a random circuit run on [Google Compute Engine](https://cloud.google.com/compute), using an NVidia A100 @@ -65,11 +67,175 @@ scale. ![qsim runtime comparison on multipe processors: noiseless](images/qsim_runtime_comparison_noiseless.png) ![qsim runtime comparison on multipe processors: noisy](images/qsim_runtime_comparison_noisy.png) -### 4. Select a specific machine +### 4. If using GPUs, select a backend + +For GPU-based simulations, you can either use qsim's native GPU backend +or the NVIDIA cuQuantum backend. While the native qsim GPU backend is performant +for extracting amplitudes of specific quantum states, it is not optimized for +sampling bitstrings, i.e. for simulating circuits that have measurement gates. For +that purpose, cuQuantum performs significantly better. cuQuantum is also needed +for multi-GPU support. More specifically, there are three options for GPU-based +simulations: +1. Native qsim. This option involves compiling qsim locally with the CUDA toolkit + installed, as described [here](https://quantumai.google/qsim/tutorials/gcp_gpu). +2. NVIDIA cuQuantum SDK/cuStateVec. This option involves installing [NVIDIA's cuQuantum SDK](https://developer.nvidia.com/cuquantum-sdk) + (instructions [here](https://docs.nvidia.com/cuda/cuquantum/custatevec/getting_started.html#installation-and-compilation)), + setting the `CUQUANTUM_ROOT` environment variable and then compiling qsim locally. + See further instructions [here](https://quantumai.google/qsim/tutorials/gcp_gpu#optional_use_the_nvidia_cuquantum_sdk). + This allows you to use the cuQuantum backend with the latest version of qsim. + However, it does not enable multi-GPU support. +3. For multi-GPU support, you will need to use [cuQuantum Appliance](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance), + which runs in a Docker container and contains a version of qsim that has been + slightly modified by NVIDIA. The versions of qsim and cirq in this container + may be out of date. + +We recommend option 2 if you are not planning to run multi-GPU simulations +and option 3 if you are. + +Note the settings in [`qsimcirq.QSimOptions`](https://quantumai.google/reference/python/qsimcirq/QSimOptions), +which allow you to specify the GPU backend as well as related settings. We find +that `max_fused_gate_size = 4` is optimal for larger circuits. In cuQuantum Appliance, +these settings are extended, as documented [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html), +allowing you to specify how many and which GPUs to use. + + +### 5. Select a specific machine After you decide whether you want to use CPUs or GPUs for your simulation, choose a specific machine: +#### For GPU-based simulations: + +For GPU simulations, you may follow the instructions in [this](https://quantumai.google/qsim/tutorials/gcp_gpu) +guide to set up a virtual machine (VM) on Google Cloud Platform (GCP). +Alternatively, you can use your own hardware or a different cloud service. +Note the [hardware requirements](https://docs.nvidia.com/cuda/cuquantum/getting_started.html#custatevec) +for NVIDIA's cuQuantum when picking a GPU; in particular, it must have +CUDA Compute Capability 7.0 or higher. +At the time of writing, the following compatable GPUs are available on GCP: +* [NVIDIA T4](https://www.techpowerup.com/gpu-specs/tesla-t4.c3316). + This is the least expensive compatable GPU on GCP. + It has 16GB of memory and can therefore simulate up to 30 qubits. + It is not compatible with multi-GPU simulations. +* [NVIDIA V100](https://www.techpowerup.com/gpu-specs/tesla-v100-pcie-16-gb.c2957). + Like the NVIDIA T4, this GPU has 16GB of RAM and + therefore supports up to 30 qubits. It is faster than the T4. + Further, it is compatible with multi-GPU simulations. With 8 NVIDIA V100s (128GB), + you can simulate up to 33 qubits. +* [NVIDIA L4](https://www.techpowerup.com/gpu-specs/l4.c4091). This GPU has 24GB + of RAM and can therefore simulate up to 31 qubits. With eight of them (192GB), you can simulate + up to 34 qubits. +* [NVIDIA A100 (40GB)](https://www.techpowerup.com/gpu-specs/a100-pcie-40-gb.c3623). + Can simulate 32 qubits with a single GPU or 36 qubits with 16 GPUS (640GB). +* [NVIDIA A100 (80GB)](https://www.techpowerup.com/gpu-specs/a100-pcie-80-gb.c3821). + Can simulate 33 qubits with a single GPU or 36 with 8 GPUs (640GB). + +If you are using GCP, pay attention to the hourly cost, which you can see when creating a VM. To estimate +your total cost, you need to know how long your simulation will take to run. Here +are our benchmarks of the various GPUs (except the L4, which was added after we performed +the benchmarks). We report the time in seconds to run a noiseless depth-N circuit on N qubits and +sample 100,000 N-bit bitstrings, all benchmarked using cuQuantum with `max_fused_gate_size = 4`. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GPUnumber of GPUs + Runtime using cuQuantum (seconds) +
N=26N=28N=30N=32N=34N=36
NVIDIA T411.253.513.4insufficient RAMinsufficient RAMinsufficient RAM
NVIDIA V10010.911.554.4insufficient RAMinsufficient RAMinsufficient RAM
NVIDIA V10021.01.32.5insufficient RAMinsufficient RAMinsufficient RAM
NVIDIA A100 (40GB)10.891.232.9511.1insufficient RAMinsufficient RAM
NVIDIA A100 (40GB)21.041.241.884.85insufficient RAMinsufficient RAM
NVIDIA A100 (80GB)21.041.211.754.0614.6insufficient RAM
NVIDIA A100 (80GB)81.311.381.552.235.0917.6
+ +Note that your GCP account may have [quotas](https://cloud.google.com/docs/quota) +on the number and type of GPUs that you can use. Increasing quotas may require contacting +customer support. + + +#### For CPU-based simulations: + 1. Restrict your options to machines that meet your memory requirements. For more information about memory requirements, see step 2. 2. Decide if performance (speed) or cost is more important to you: @@ -87,7 +253,7 @@ choose a specific machine: typically, f=4 is the best option). * Simulating a **deep circuit** (depth 30+). -### 5. Consider multiple compute nodes +### 6. Consider multiple compute nodes Simulating in multinode mode is useful when your simulation can be parallelized. In a noisy simulation, the trajectories (also known as repetitions, iterations) From de565b7e39c3fe9867c195a4fafb32a937acefd5 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 18:26:07 -0700 Subject: [PATCH 02/13] Update flowchart --- docs/images/choose_hw.png | Bin 47955 -> 85256 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/images/choose_hw.png b/docs/images/choose_hw.png index 76a894b4805f0510867aca882dcf767c994120c5..b9d3183e4b3b854d24a11c148a0f12cf4393f839 100644 GIT binary patch literal 85256 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 literal 47955 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 From 19e96c66137592e7d9c302ea08a61708995f9e12 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 18:28:24 -0700 Subject: [PATCH 03/13] Delete choose_hw.png --- docs/images/choose_hw.png | Bin 85256 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 docs/images/choose_hw.png diff --git a/docs/images/choose_hw.png b/docs/images/choose_hw.png deleted file mode 100644 index b9d3183e4b3b854d24a11c148a0f12cf4393f839..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85256 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 From cc33fe46b30d1ffe149fad1f0c9eab7619a83f39 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 18:28:42 -0700 Subject: [PATCH 04/13] Update flowchart --- docs/images/choose_hw.png | Bin 0 -> 85256 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/choose_hw.png diff --git a/docs/images/choose_hw.png b/docs/images/choose_hw.png new file mode 100644 index 0000000000000000000000000000000000000000..b9d3183e4b3b854d24a11c148a0f12cf4393f839 GIT binary patch literal 85256 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 literal 0 HcmV?d00001 From 23622fb918d9bc7dbb3e0898ad86cb3ff35cb629 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 18:34:59 -0700 Subject: [PATCH 05/13] Clarify previous benchmarks --- docs/choose_hw.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/choose_hw.md b/docs/choose_hw.md index 4bd52454..0a2efc64 100644 --- a/docs/choose_hw.md +++ b/docs/choose_hw.md @@ -58,11 +58,12 @@ benefits from high-bandwidth memory (above 100GB/s). which acts as a backend for qsim. It is documented [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html). The following charts show the runtime for a random circuit run on -[Google Compute Engine](https://cloud.google.com/compute), using an NVidia A100 +[Google Compute Engine](https://cloud.google.com/compute), using an NVIDIA A100 GPU, and a compute-optimized CPU (c2-standard-4). The first chart shows the runtimes for the noiseless simulation. The second chart shows the runtimes for a noisy simulation, using a phase damping channel (p=0.01). The charts use a log -scale. +scale. These benchmarks were all performed using qsim's native GPU and CPU +backends and do not involve sampling bitstrings (i.e. no measure gates). ![qsim runtime comparison on multipe processors: noiseless](images/qsim_runtime_comparison_noiseless.png) ![qsim runtime comparison on multipe processors: noisy](images/qsim_runtime_comparison_noisy.png) @@ -317,6 +318,9 @@ depth beyond 20 qubits. ## Sample benchmarks +The following benchmarks are all run using qsim's native CPU and GPU backends +and do not involve sampling bitstrings. + **Noiseless simulation benchmarks data sheet** For a random circuit, depth=20, f=3, max threads. From bb0dc16a7eb1e9ec79d338f2b55ad2d1967c0bdd Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 19:01:57 -0700 Subject: [PATCH 06/13] Make links relative --- docs/choose_hw.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/choose_hw.md b/docs/choose_hw.md index 0a2efc64..e112149e 100644 --- a/docs/choose_hw.md +++ b/docs/choose_hw.md @@ -55,7 +55,7 @@ benefits from high-bandwidth memory (above 100GB/s). pool their memory. For example, with eight 80-GB NVIDIA A100 GPUs (640GB of total GPU memory), you can simulate up to 36 qubits. Multi-GPU simulations are supported by [NVIDIA's cuQuantum Appliance](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance), - which acts as a backend for qsim. It is documented [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html). + which acts as a backend for qsim. The following charts show the runtime for a random circuit run on [Google Compute Engine](https://cloud.google.com/compute), using an NVIDIA A100 @@ -78,11 +78,11 @@ that purpose, cuQuantum performs significantly better. cuQuantum is also needed for multi-GPU support. More specifically, there are three options for GPU-based simulations: 1. Native qsim. This option involves compiling qsim locally with the CUDA toolkit - installed, as described [here](https://quantumai.google/qsim/tutorials/gcp_gpu). + installed, as described [here](tutorials/gcp_gpu.md). 2. NVIDIA cuQuantum SDK/cuStateVec. This option involves installing [NVIDIA's cuQuantum SDK](https://developer.nvidia.com/cuquantum-sdk) (instructions [here](https://docs.nvidia.com/cuda/cuquantum/custatevec/getting_started.html#installation-and-compilation)), setting the `CUQUANTUM_ROOT` environment variable and then compiling qsim locally. - See further instructions [here](https://quantumai.google/qsim/tutorials/gcp_gpu#optional_use_the_nvidia_cuquantum_sdk). + See further instructions [here](tutorials/gcp_gpu.md#optional-use-the-nvidia-cuquantum-sdk). This allows you to use the cuQuantum backend with the latest version of qsim. However, it does not enable multi-GPU support. 3. For multi-GPU support, you will need to use [cuQuantum Appliance](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance), @@ -107,7 +107,7 @@ choose a specific machine: #### For GPU-based simulations: -For GPU simulations, you may follow the instructions in [this](https://quantumai.google/qsim/tutorials/gcp_gpu) +For GPU simulations, you may follow the instructions in [this](tutorials/gcp_gpu.md) guide to set up a virtual machine (VM) on Google Cloud Platform (GCP). Alternatively, you can use your own hardware or a different cloud service. Note the [hardware requirements](https://docs.nvidia.com/cuda/cuquantum/getting_started.html#custatevec) From 7d63627f33280db33de94cae7b2cef0129aa64d9 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 20:39:28 -0700 Subject: [PATCH 07/13] remove `.md` in relative links --- docs/choose_hw.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/choose_hw.md b/docs/choose_hw.md index e112149e..aa79331d 100644 --- a/docs/choose_hw.md +++ b/docs/choose_hw.md @@ -78,11 +78,11 @@ that purpose, cuQuantum performs significantly better. cuQuantum is also needed for multi-GPU support. More specifically, there are three options for GPU-based simulations: 1. Native qsim. This option involves compiling qsim locally with the CUDA toolkit - installed, as described [here](tutorials/gcp_gpu.md). + installed, as described [here](tutorials/gcp_gpu). 2. NVIDIA cuQuantum SDK/cuStateVec. This option involves installing [NVIDIA's cuQuantum SDK](https://developer.nvidia.com/cuquantum-sdk) (instructions [here](https://docs.nvidia.com/cuda/cuquantum/custatevec/getting_started.html#installation-and-compilation)), setting the `CUQUANTUM_ROOT` environment variable and then compiling qsim locally. - See further instructions [here](tutorials/gcp_gpu.md#optional-use-the-nvidia-cuquantum-sdk). + See further instructions [here](tutorials/gcp_gpu#optional-use-the-nvidia-cuquantum-sdk). This allows you to use the cuQuantum backend with the latest version of qsim. However, it does not enable multi-GPU support. 3. For multi-GPU support, you will need to use [cuQuantum Appliance](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance), @@ -107,7 +107,7 @@ choose a specific machine: #### For GPU-based simulations: -For GPU simulations, you may follow the instructions in [this](tutorials/gcp_gpu.md) +For GPU simulations, you may follow the instructions in [this](tutorials/gcp_gpu) guide to set up a virtual machine (VM) on Google Cloud Platform (GCP). Alternatively, you can use your own hardware or a different cloud service. Note the [hardware requirements](https://docs.nvidia.com/cuda/cuquantum/getting_started.html#custatevec) From cec1e433f21dac171bcddfbf433b53ef6eaf5d89 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Wed, 24 May 2023 21:50:42 -0700 Subject: [PATCH 08/13] Update gcp_gpu.md with instructions for cuQuantum Appliance --- docs/tutorials/gcp_gpu.md | 100 +++++++++++++++++++++++--------------- 1 file changed, 62 insertions(+), 38 deletions(-) diff --git a/docs/tutorials/gcp_gpu.md b/docs/tutorials/gcp_gpu.md index d42c954a..4c6b8cbc 100644 --- a/docs/tutorials/gcp_gpu.md +++ b/docs/tutorials/gcp_gpu.md @@ -1,14 +1,27 @@ # GPU-based quantum simulation on Google Cloud In this tutorial, you configure and test a virtual machine (VM) to run GPU-based -quantum simulations on Google Cloud. +quantum simulations on Google Cloud. The instructions for compiling qsim with GPU +support are also relevant if you are interested in running GPU simulations locally +or on a different cloud platform. + +Before starting this tutorial, we recommend reading the [choosing hardware guide](../choose_hw) +in order to decide which type of GPU you would like to use and how many GPUs you +will need. As discussed there, you have a choice among 3 options: +1. using the native qsim GPU backend, +2. using NVIDIA's cuQuantum as a backend for the latest version of +qsim, or +3. using cuQuantum Appliance, which runs in a Docker container and has +a modified version of qsim. If you plan to do multi-GPU simulations, then you +will need to pick option 3. The following steps depend on which option you pick. +The headers for each step note which of these three options they apply to. Note: The later steps in this tutorial require you to enter several commands at the command line. Some commands might require you to add `sudo` before the command. For example, if a step asks you to type `icecream -fancy`, you might need to type `sudo icecream -fancy`. -## 1. Create a virtual machine +## 1. Create a virtual machine (Options 1, 2, and 3) Follow the instructions in the [Quickstart using a Linux VM](https://cloud.google.com/compute/docs/quickstart-linux) @@ -17,8 +30,7 @@ instance section, ensure that your VM has the following properties: * In the **Machine Configuration** section: 1. Select the tab for the **GPU** machine family. - 2. In the **GPU type** option, choose **NVIDIA Tesla A100**. - 3. In the **Number of GPUs** option, choose **1**. + 2. Select the **GPU Type** and **Number of GPUs** that you would like to use. * In the **Boot disk** section, click the **Change** button: 1. In the **Operating System** option, choose **Ubuntu**. 2. In the **Version** option, choose **20.04 LTS**. @@ -33,13 +45,17 @@ When Google Cloud finishes creating the VM, you can see your VM listed in the [Compute Instances dashboard](https://pantheon.corp.google.com/compute/instances) for your project. +There may be [quotas](https://cloud.google.com/docs/quota) on your +account limiting the number and type of GPUs or the regions in which they can be located. +If necessary, you can request a quota increase, which in some cases is automatically +approved and in others requires communicating with customer support. + ### Find out more -* [Choosing hardware for your qsim simulation](/qsim/choose_hw) * [Choosing the right machine family and type](https://cloud.google.com/blog/products/compute/choose-the-right-google-compute-engine-machine-type-for-you) * [Creating a VM with attached GPUs](https://cloud.google.com/compute/docs/gpus/create-vm-with-gpus#create-new-gpu-vm) -## 2. Prepare your computer +## 2. Prepare your computer (Options 1, 2, and 3) Use SSH in the `gcloud` tool to communicate with your VM. @@ -62,7 +78,12 @@ Use SSH in the `gcloud` tool to communicate with your VM. When the command completes successfully, your prompt changes from your local machine to your virtual machine. -## 3. Enable your virtual machine to use the GPU + +## 3. Install Docker Engine (Option 3 only) +If you are setting up cuQuantum Appliance, follow [these](https://docs.docker.com/engine/install/) instructions +to install Docker Engine. + +## 4. Enable your virtual machine to use the GPU (Options 1, 2, and 3) 1. Install the GPU driver. Complete the steps provided in the following sections of the [Installing GPU @@ -72,13 +93,16 @@ machine to your virtual machine. under the **Ubuntu** tab. For step 3, only perform the steps for **Ubuntu 20.04** (steps 3a through 3f). * [Verifying the GPU driver install](https://cloud.google.com/compute/docs/gpus/install-drivers-gpu#verify-driver-install) -2. Install the CUDA toolkit. +2. If missing, install the CUDA toolkit. + (This may have already been installed along with the driver. You can + check whether it is installed by checking whether the CUDA toolkit + directory exists as described in step 3.) ```shell sudo apt install -y nvidia-cuda-toolkit ``` -3. Add your CUDA toolkit to the environment search path. +3. Add your CUDA toolkit to the environment search path (Options 1 and 2 only) 1. Discover the directory of the CUDA toolkit that you installed. ```shell @@ -104,7 +128,17 @@ machine to your virtual machine. 3. Run `source ~/.bashrc` to activate the new environment search path -## 4. Install build tools +## 5. Install NVIDIA Container Toolkit (Option 3 only) +If you are setting up cuQuantum Appliance, follow the instructions +[here](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit) +to set up NVIDIA Container Toolkit. + +## 6. Install NVIDIA cuQuantum Appliance (Option 3 only) +Follow the instructions [here](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance) +to set up cuQuantum Appliance. You may need to use `sudo` for the Docker commands. +You may now skip to step 10. + +## 7. Install build tools (Options 1 and 2) Install the tools required to build qsim. This step might take a few minutes to complete. @@ -113,9 +147,20 @@ complete. sudo apt install cmake && sudo apt install pip && pip install pybind11 ``` +## 8. Install cuQuantum SDK/cuStateVec (Option 2) +Reboot the VM. Then follow the instructions [here](https://docs.nvidia.com/cuda/cuquantum/custatevec/getting_started.html#install-custatevec-from-nvidia-devzone) +to install cuQuantum. Specifically, [this](https://developer.nvidia.com/cuquantum-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=deb_network) is the appropriate installer. +Reboot the VM again. Set the `CUQUANTUM_DIR` and `CUQUANTUM_ROOT` environment variables, +```shell +export CUQUANTUM_DIR=/opt/nvidia/cuquantum/ +export CUQUANTUM_ROOT=/opt/nvidia/cuquantum/ +``` +modifying the above if cuQuantum was installed to a different directory. -## 5. Create a GPU-enabled version of qsim + +## 9. Create a GPU-enabled version of qsim (Options 1 and 2) +0. Reboot the VM (option 1). 1. Clone the qsim repository. ```shell @@ -140,10 +185,12 @@ sudo apt install cmake && sudo apt install pip && pip install pybind11 ``` -## 6. Verify your installation +## 10. Verify your installation (Options 1, 2, and 3) You can use the following code to verify that qsim uses your GPU. You can paste -the code directly into the REPL, or paste the code in a file. +the code directly into the REPL, or paste the code in a file. See the documentation +[here](https://quantumai.google/reference/python/qsimcirq/QSimOptions) for Options 1 +and 2 or [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html) for Option 3. ``` # Import Cirq and qsim @@ -155,7 +202,8 @@ q0, q1 = cirq.LineQubit.range(2) circuit = cirq.Circuit(cirq.H(q0), cirq.CX(q0, q1)) # Instantiate a simulator that uses the GPU -gpu_options = qsimcirq.QSimOptions(use_gpu=True) +# xx = 0 for Option 1, 1 for Option 2, or the number of GPUs for Option 3. +gpu_options = qsimcirq.QSimOptions(use_gpu=True, gpu_mode = xx, max_fused_gate_size=4) qsim_simulator = qsimcirq.QSimSimulator(qsim_options=gpu_options) # Run the simulation @@ -175,30 +223,6 @@ After a moment, you should see a result that looks similar to the following. [(0.7071067690849304+0j), 0j] ``` -### Optional: Use the NVIDIA cuQuantum SDK - -If you have the [NVIDIA cuQuantum SDK](https://developer.nvidia.com/cuquantum-sdk) -installed (instructions are provided -[here](https://docs.nvidia.com/cuda/cuquantum/custatevec/getting_started.html#installation-and-compilation), -cuStateVec v1.0.0 or higher is required), -you can use it with this tutorial. Before building qsim in step 5, -set the `CUQUANTUM_ROOT` environment variable from the command line: - -```bash -export CUQUANTUM_ROOT=[PATH_TO_CUQUANTUM_SDK] -``` - -Once you have built qsim, modify the `gpu_options` line like so: - -```python -gpu_options = qsimcirq.QSimOptions(use_gpu=True, gpu_mode=1) -``` - -This instructs qsim to make use of its cuQuantum integration, which provides -improved performance on NVIDIA GPUs. If you experience issues with this -option, please file an issue on the qsim repository. - - ## Next steps After you finish, don't forget to stop or delete your VM on the Compute From 3ab03ab1642fc13b4e0970620aecc8bcaf34f7ba Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Fri, 26 May 2023 08:45:55 -0700 Subject: [PATCH 09/13] Changes recommended by iserge@ --- docs/choose_hw.md | 56 ++++++++++++++++++++++------------------------- 1 file changed, 26 insertions(+), 30 deletions(-) diff --git a/docs/choose_hw.md b/docs/choose_hw.md index aa79331d..ff692530 100644 --- a/docs/choose_hw.md +++ b/docs/choose_hw.md @@ -38,7 +38,7 @@ below](#5_consider_multiple_compute_nodes). ### 2. Estimate your memory requirements You can estimate your memory requirements with the following rule of thumb: -$ {\rm memory\, required} = 8 \cdot 2^N {\rm bytes} $ for an N-qubit circuit +${\rm memory\ required} = 8 \cdot 2^N \ {\rm bytes}$ for an N-qubit circuit In addition to memory size, consider the bandwidth of your memory. qsim performs best when it can use the maximum number of threads. Multi-threaded simulation @@ -95,8 +95,8 @@ and option 3 if you are. Note the settings in [`qsimcirq.QSimOptions`](https://quantumai.google/reference/python/qsimcirq/QSimOptions), which allow you to specify the GPU backend as well as related settings. We find -that `max_fused_gate_size = 4` is optimal for larger circuits. In cuQuantum Appliance, -these settings are extended, as documented [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html), +that `max_fused_gate_size = 4` is usually optimal for larger circuits, although you may want to experiment yourself. +In cuQuantum Appliance, these settings are extended, as documented [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html), allowing you to specify how many and which GPUs to use. @@ -105,11 +105,30 @@ allowing you to specify how many and which GPUs to use. After you decide whether you want to use CPUs or GPUs for your simulation, choose a specific machine: +#### For CPU-based simulations: + +1. Restrict your options to machines that meet your memory requirements. For + more information about memory requirements, see step 2. +2. Decide if performance (speed) or cost is more important to you: + * For a table of performance benchmarks, see + [Sample benchmarks](#sample_benchmarks) below. + * For more information about GCP pricing, see the + [Google Cloud pricing calculator](https://cloud.google.com/products/calculator). + * Prioritizing performance is particularly important in the following + scenarios: + * Simulating with a **higher f value** (f is the maximum number of + qubits allowed per fused gate). + * For small to medium size circuits (up to 22 qubits), keep f low + (2 or 3). + * For medium to large size qubits (22+ qubits), use a higher f + typically, f=4 is the best option). + * Simulating a **deep circuit** (depth 30+). + #### For GPU-based simulations: For GPU simulations, you may follow the instructions in [this](tutorials/gcp_gpu) guide to set up a virtual machine (VM) on Google Cloud Platform (GCP). -Alternatively, you can use your own hardware or a different cloud service. +Alternatively, you can use your own hardware. Note the [hardware requirements](https://docs.nvidia.com/cuda/cuquantum/getting_started.html#custatevec) for NVIDIA's cuQuantum when picking a GPU; in particular, it must have CUDA Compute Capability 7.0 or higher. @@ -229,30 +248,7 @@ sample 100,000 N-bit bitstrings, all benchmarked using cuQuantum with `max_fused - -Note that your GCP account may have [quotas](https://cloud.google.com/docs/quota) -on the number and type of GPUs that you can use. Increasing quotas may require contacting -customer support. - -#### For CPU-based simulations: - -1. Restrict your options to machines that meet your memory requirements. For - more information about memory requirements, see step 2. -2. Decide if performance (speed) or cost is more important to you: - * For a table of performance benchmarks, see - [Sample benchmarks](#sample_benchmarks) below. - * For more information about GCP pricing, see the - [Google Cloud pricing calculator](https://cloud.google.com/products/calculator). - * Prioritizing performance is particularly important in the following - scenarios: - * Simulating with a **higher f value** (f is the maximum number of - qubits allowed per fused gate). - * For small to medium size circuits (up to 22 qubits), keep f low - (2 or 3). - * For medium to large size qubits (22+ qubits), use a higher f - typically, f=4 is the best option). - * Simulating a **deep circuit** (depth 30+). ### 6. Consider multiple compute nodes @@ -270,11 +266,11 @@ simulation using HTCondor on Google Cloud](/qsim/tutorials/multinode). Runtime grows exponentially with the number of qubits, and linearly with circuit depth beyond 20 qubits. -* For noiseless simulations, runtime grows at a rate of $ 2^N $ for an N-qubit +* For noiseless simulations, runtime grows at a rate of $2^N$ for an N-qubit circuit. For more information about runtimes for small circuits, see [Additional notes for advanced users](#additional_notes_for_advanced_users) below). -* For noisy simulations, runtime grows at a rate of $ 2^N $ multiplied by the +* For noisy simulations, runtime grows at a rate of $2^N$ multiplied by the number of iterations for an N-qubit circuit. ## Additional notes for advanced users @@ -314,7 +310,7 @@ depth beyond 20 qubits. addition to this, qsim is not optimized for small circuits. * The total small circuits runtime overhead for an N qubit circuit depends on the circuit depth and on N. The overhead can be large enough to - conceal the $ 2^N $ growth in runtime. + conceal the $2^N$ growth in runtime. ## Sample benchmarks From c44851049ca04587e5d7405ff57ea353347bfcd9 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Fri, 26 May 2023 08:52:09 -0700 Subject: [PATCH 10/13] Changes recommended by iserge@ --- docs/tutorials/gcp_gpu.md | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/docs/tutorials/gcp_gpu.md b/docs/tutorials/gcp_gpu.md index 4c6b8cbc..03746071 100644 --- a/docs/tutorials/gcp_gpu.md +++ b/docs/tutorials/gcp_gpu.md @@ -45,11 +45,6 @@ When Google Cloud finishes creating the VM, you can see your VM listed in the [Compute Instances dashboard](https://pantheon.corp.google.com/compute/instances) for your project. -There may be [quotas](https://cloud.google.com/docs/quota) on your -account limiting the number and type of GPUs or the regions in which they can be located. -If necessary, you can request a quota increase, which in some cases is automatically -approved and in others requires communicating with customer support. - ### Find out more * [Choosing the right machine family and type](https://cloud.google.com/blog/products/compute/choose-the-right-google-compute-engine-machine-type-for-you) @@ -78,12 +73,7 @@ Use SSH in the `gcloud` tool to communicate with your VM. When the command completes successfully, your prompt changes from your local machine to your virtual machine. - -## 3. Install Docker Engine (Option 3 only) -If you are setting up cuQuantum Appliance, follow [these](https://docs.docker.com/engine/install/) instructions -to install Docker Engine. - -## 4. Enable your virtual machine to use the GPU (Options 1, 2, and 3) +## 3. Enable your virtual machine to use the GPU (Options 1, 2, and 3) 1. Install the GPU driver. Complete the steps provided in the following sections of the [Installing GPU @@ -128,6 +118,10 @@ to install Docker Engine. 3. Run `source ~/.bashrc` to activate the new environment search path +## 4. Install Docker Engine (Option 3 only) +If you are setting up cuQuantum Appliance, follow [these](https://docs.docker.com/engine/install/) instructions +to install Docker Engine. + ## 5. Install NVIDIA Container Toolkit (Option 3 only) If you are setting up cuQuantum Appliance, follow the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit) From 257c7db5d3e4fadccc18ae92bc433b9fbfeb5da9 Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Fri, 26 May 2023 14:28:34 -0700 Subject: [PATCH 11/13] Reorder (suggested by iserge@) --- docs/tutorials/gcp_gpu.md | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/docs/tutorials/gcp_gpu.md b/docs/tutorials/gcp_gpu.md index 03746071..b9c07f7b 100644 --- a/docs/tutorials/gcp_gpu.md +++ b/docs/tutorials/gcp_gpu.md @@ -118,21 +118,8 @@ machine to your virtual machine. 3. Run `source ~/.bashrc` to activate the new environment search path -## 4. Install Docker Engine (Option 3 only) -If you are setting up cuQuantum Appliance, follow [these](https://docs.docker.com/engine/install/) instructions -to install Docker Engine. - -## 5. Install NVIDIA Container Toolkit (Option 3 only) -If you are setting up cuQuantum Appliance, follow the instructions -[here](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit) -to set up NVIDIA Container Toolkit. -## 6. Install NVIDIA cuQuantum Appliance (Option 3 only) -Follow the instructions [here](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance) -to set up cuQuantum Appliance. You may need to use `sudo` for the Docker commands. -You may now skip to step 10. - -## 7. Install build tools (Options 1 and 2) +## 4. Install build tools (Options 1 and 2) Install the tools required to build qsim. This step might take a few minutes to complete. @@ -141,7 +128,7 @@ complete. sudo apt install cmake && sudo apt install pip && pip install pybind11 ``` -## 8. Install cuQuantum SDK/cuStateVec (Option 2) +## 5. Install cuQuantum SDK/cuStateVec (Option 2 only) Reboot the VM. Then follow the instructions [here](https://docs.nvidia.com/cuda/cuquantum/custatevec/getting_started.html#install-custatevec-from-nvidia-devzone) to install cuQuantum. Specifically, [this](https://developer.nvidia.com/cuquantum-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=deb_network) is the appropriate installer. Reboot the VM again. Set the `CUQUANTUM_DIR` and `CUQUANTUM_ROOT` environment variables, @@ -153,7 +140,7 @@ modifying the above if cuQuantum was installed to a different directory. -## 9. Create a GPU-enabled version of qsim (Options 1 and 2) +## 6. Create a GPU-enabled version of qsim (Options 1 and 2 only) 0. Reboot the VM (option 1). 1. Clone the qsim repository. @@ -178,6 +165,19 @@ modifying the above if cuQuantum was installed to a different directory. ``` +## 7. Install Docker Engine (Option 3 only) +If you are setting up cuQuantum Appliance, follow [these](https://docs.docker.com/engine/install/) instructions +to install Docker Engine. + +## 8. Install NVIDIA Container Toolkit (Option 3 only) +If you are setting up cuQuantum Appliance, follow the instructions +[here](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit) +to set up NVIDIA Container Toolkit. + +## 9. Install NVIDIA cuQuantum Appliance (Option 3 only) +Follow the instructions [here](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuquantum-appliance) +to set up cuQuantum Appliance. You may need to use `sudo` for the Docker commands. + ## 10. Verify your installation (Options 1, 2, and 3) From 8b8ecffcdea51800edd02997e2c8182a64c5e5dc Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Fri, 26 May 2023 14:30:48 -0700 Subject: [PATCH 12/13] Update gcp_gpu.md --- docs/tutorials/gcp_gpu.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/tutorials/gcp_gpu.md b/docs/tutorials/gcp_gpu.md index b9c07f7b..35596657 100644 --- a/docs/tutorials/gcp_gpu.md +++ b/docs/tutorials/gcp_gpu.md @@ -185,6 +185,8 @@ You can use the following code to verify that qsim uses your GPU. You can paste the code directly into the REPL, or paste the code in a file. See the documentation [here](https://quantumai.google/reference/python/qsimcirq/QSimOptions) for Options 1 and 2 or [here](https://docs.nvidia.com/cuda/cuquantum/appliance/cirq.html) for Option 3. +Make sure to change `xx` to 0 for Option 1, 1 for Option 2, or the number of GPUs for +Option 3. ``` # Import Cirq and qsim From 4ffa9fbfc7b07eb1ed9f450f281ebeba31ef121a Mon Sep 17 00:00:00 2001 From: eliottrosenberg <61400172+eliottrosenberg@users.noreply.github.com> Date: Thu, 1 Jun 2023 07:05:57 -0700 Subject: [PATCH 13/13] Update gcp_gpu.md --- docs/tutorials/gcp_gpu.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/tutorials/gcp_gpu.md b/docs/tutorials/gcp_gpu.md index 35596657..09a642e7 100644 --- a/docs/tutorials/gcp_gpu.md +++ b/docs/tutorials/gcp_gpu.md @@ -166,7 +166,7 @@ modifying the above if cuQuantum was installed to a different directory. ``` ## 7. Install Docker Engine (Option 3 only) -If you are setting up cuQuantum Appliance, follow [these](https://docs.docker.com/engine/install/) instructions +If you are setting up cuQuantum Appliance, follow [these](https://docs.docker.com/engine/install/ubuntu/) instructions to install Docker Engine. ## 8. Install NVIDIA Container Toolkit (Option 3 only)