Update poetry to using CUDA12, fix the paths in refactored cuquantum code.

This commit is contained in:
Yang Liwei
2025-11-19 11:10:48 +08:00
parent 4d2c3251a2
commit c51057df3f
6 changed files with 13 additions and 3325 deletions

3315
poetry.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -23,16 +23,17 @@ packages = [{ include = "qibotn", from = "src" }]
python = ">=3.11,<3.14" python = ">=3.11,<3.14"
qibo = { git="https://github.com/qiboteam/qibo", branch="expectation"} qibo = { git="https://github.com/qiboteam/qibo", branch="expectation"}
quimb = { version = "^1.10.0", extras = ["tensor"] } quimb = { version = "^1.10.0", extras = ["tensor"] }
cupy-cuda11x = { version = "^13.1.0", optional = true } cupy-cuda12x = { version = "^13.6.0", optional = true }
cuquantum-python-cu11 = { version = "^24.1.0", optional = true } cuda-toolkit = {extras = ["all"], version = "^12.9.1"}
cuquantum-python-cu12 = { version = "^25.9.1", optional = true }
qmatchatea = { version = "^1.4.3", optional = true } qmatchatea = { version = "^1.4.3", optional = true }
qiskit = { version = "^1.4.0", optional = true } qiskit = { version = "^1.4.0", optional = true }
qtealeaves = { version = "^1.5.20", optional = true } qtealeaves = { version = "^1.5.20", optional = true }
[tool.poetry.extras] [tool.poetry.extras]
cuda = ["cupy-cuda11x", "cuquantum-python-cu11", "mpi4py"] cuda = ["cupy-cuda12x", "cuda-toolkit", "cuquantum-python-cu12", "mpi4py"]
qmatchatea = ["qmatchatea", "qtealeaves", "qiskit"] qmatchatea = ["qmatchatea"]
[tool.poetry.group.docs] [tool.poetry.group.docs]
optional = true optional = true

View File

@@ -1,6 +1,7 @@
import cupy as cp import cupy as cp
import numpy as np import numpy as np
from cuquantum import cutensornet as cutn # from cuquantum import tensornet as cutn
import cuquantum.bindings.cutensornet as cutn
from qibotn.circuit_convertor import QiboCircuitToEinsum from qibotn.circuit_convertor import QiboCircuitToEinsum
from qibotn.mps_utils import apply_gate, initial from qibotn.mps_utils import apply_gate, initial

View File

@@ -1,8 +1,9 @@
import cupy as cp import cupy as cp
import cuquantum.cutensornet as cutn # import cuquantum.tensornet as cutn
import cuquantum.bindings.cutensornet as cutn
from cupy.cuda import nccl from cupy.cuda import nccl
from cupy.cuda.runtime import getDeviceCount from cupy.cuda.runtime import getDeviceCount
from cuquantum import Network, contract from cuquantum.tensornet import Network, contract
from mpi4py import MPI from mpi4py import MPI
from qibo import hamiltonians from qibo import hamiltonians
from qibo.symbols import I, X, Y, Z from qibo.symbols import I, X, Y, Z

View File

@@ -1,4 +1,4 @@
from cuquantum import contract, contract_path from cuquantum.tensornet import contract, contract_path
# Reference: https://github.com/NVIDIA/cuQuantum/blob/main/python/samples/cutensornet/tn_algorithms/mps_algorithms.ipynb # Reference: https://github.com/NVIDIA/cuQuantum/blob/main/python/samples/cutensornet/tn_algorithms/mps_algorithms.ipynb

View File

@@ -1,6 +1,6 @@
import cupy as cp import cupy as cp
from cuquantum import contract from cuquantum.tensornet import contract
from cuquantum.cutensornet.experimental import contract_decompose from cuquantum.tensornet.experimental import contract_decompose
def initial(num_qubits, dtype): def initial(num_qubits, dtype):