Skip to content

Commit 2274328

Browse files
authored
Update Tensor Network Decoder docs to address cuTensor 2.3 (#268)
Fixes #267 Signed-off-by: Ben Howe <[email protected]>
1 parent 06704f9 commit 2274328

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

docs/sphinx/api/qec/tensor_network_decoder_api.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,16 @@
88

99
The Tensor Network Decoder is a Python-only implementation and it requires Python 3.11 or higher. C++ APIs are not available for this decoder.
1010

11+
Due to the additional dependencies of the Tensor Network Decoder, you must
12+
specify the optional pip package when installing CUDA-Q QEC in order to use this
13+
decoder. Use `pip install cudaq-qec[tensor-network-decoder]` in order to use
14+
this decoder.
15+
16+
The Tensor Network Decoder has the same GPU support as the `Quantum Low-Density Parity-Check Decoder<https://nvidia.github.io/cudaqx/components/qec/introduction.html#quantum-low-density-parity-check-decoder>`__.
17+
However, if you are using the V100 GPU (SM70), you will need to pin your
18+
cuTensor version to 2.2 by running `pip install cutensor_cu12==2.2`. Note
19+
that this GPU will not be supported by the Tensor Network Decoder when
20+
CUDA-Q 0.5.0 is released.
1121

1222
.. note::
1323
It is recommended to create decoders using the `cudaq_qec` plugin API:

docs/sphinx/components/qec/introduction.rst

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -761,6 +761,11 @@ Tensor Network Decoder
761761

762762
The ``tensor_network_decoder`` constructs a tensor network representation of a quantum code given its parity check matrix, logical observable(s), and noise model. It can decode individual syndromes or batches of syndromes, returning the probability that a logical observable has flipped.
763763

764+
Due to the additional dependencies of the Tensor Network Decoder, you must
765+
specify the optional pip package when installing CUDA-Q QEC in order to use this
766+
decoder. Use `pip install cudaq-qec[tensor-network-decoder]` in order to use
767+
this decoder.
768+
764769
Key Steps:
765770

766771
1. **Define the parity check matrix**: This matrix encodes the structure of the quantum code. In the example, a simple [3,1] repetition code is used.
@@ -813,6 +818,14 @@ Output:
813818

814819
The decoder returns the probability that the logical observable has flipped for each syndrome. This can be used to assess the performance of the code and the decoder under different error scenarios.
815820

821+
.. note::
822+
823+
In general, the Tensor Network Decoder has the same GPU support as the
824+
`Quantum Low-Density Parity-Check Decoder <https://nvidia.github.io/cudaqx/components/qec/introduction.html#quantum-low-density-parity-check-decoder>`__.
825+
However, if you are using the V100 GPU (SM70), you will need to pin your
826+
cuTensor version to 2.2 by running `pip install cutensor_cu12==2.2`. Note
827+
that this GPU will not be supported by the Tensor Network Decoder when
828+
CUDA-Q 0.5.0 is released.
816829

817830

818831
Numerical Experiments

0 commit comments

Comments
 (0)