fix: removed toplevel cuquantum import

This commit is contained in:
BrunoLiegiBastonLiegi
2024-04-10 11:04:05 +02:00
parent ed74bef094
commit 72f4841e5c

View File

@@ -1,19 +1,9 @@
import cuquantum # pylint: disable=import-error
import numpy as np import numpy as np
from qibo.backends.numpy import NumpyBackend from qibo.backends.numpy import NumpyBackend
from qibo.config import raise_error from qibo.config import raise_error
from qibo.result import QuantumState from qibo.result import QuantumState
CUDA_TYPES = { CUDA_TYPES = {}
"complex64": (
cuquantum.cudaDataType.CUDA_C_32F,
cuquantum.ComputeType.COMPUTE_32F,
),
"complex128": (
cuquantum.cudaDataType.CUDA_C_64F,
cuquantum.ComputeType.COMPUTE_64F,
),
}
class CuTensorNet(NumpyBackend): # pragma: no cover class CuTensorNet(NumpyBackend): # pragma: no cover
@@ -75,6 +65,18 @@ class CuTensorNet(NumpyBackend): # pragma: no cover
self.supports_multigpu = True self.supports_multigpu = True
self.handle = self.cutn.create() self.handle = self.cutn.create()
global CUDA_TYPES
CUDA_TYPES = {
"complex64": (
self.cuquantum.cudaDataType.CUDA_C_32F,
self.cuquantum.ComputeType.COMPUTE_32F,
),
"complex128": (
self.cuquantum.cudaDataType.CUDA_C_64F,
self.cuquantum.ComputeType.COMPUTE_64F,
),
}
def apply_gate(self, gate, state, nqubits): # pragma: no cover def apply_gate(self, gate, state, nqubits): # pragma: no cover
raise_error(NotImplementedError, "QiboTN cannot apply gates directly.") raise_error(NotImplementedError, "QiboTN cannot apply gates directly.")