pyqrack-cuda-complex128 1.72.1__tar.gz → 1.73.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pyqrack-cuda-complex128 might be problematic. Click here for more details.

Files changed (29) hide show
  1. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/Makefile +16 -5
  2. {pyqrack_cuda_complex128-1.72.1/pyqrack_cuda_complex128.egg-info → pyqrack_cuda_complex128-1.73.0}/PKG-INFO +1 -1
  3. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_simulator.py +35 -0
  4. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_system/qrack_system.py +6 -0
  5. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0/pyqrack_cuda_complex128.egg-info}/PKG-INFO +1 -1
  6. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/setup.py +1 -1
  7. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/LICENSE +0 -0
  8. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/MANIFEST.in +0 -0
  9. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/README.md +0 -0
  10. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyproject.toml +0 -0
  11. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/__init__.py +0 -0
  12. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/neuron_activation_fn.py +0 -0
  13. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/pauli.py +0 -0
  14. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_ace_backend.py +0 -0
  15. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_circuit.py +0 -0
  16. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_neuron.py +0 -0
  17. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_neuron_torch_layer.py +0 -0
  18. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_stabilizer.py +0 -0
  19. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/qrack_system/__init__.py +0 -0
  20. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/quimb_circuit_type.py +0 -0
  21. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/stats/__init__.py +0 -0
  22. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/stats/load_quantized_data.py +0 -0
  23. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack/stats/quantize_by_range.py +0 -0
  24. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack_cuda_complex128.egg-info/SOURCES.txt +0 -0
  25. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack_cuda_complex128.egg-info/dependency_links.txt +0 -0
  26. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack_cuda_complex128.egg-info/not-zip-safe +0 -0
  27. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack_cuda_complex128.egg-info/requires.txt +0 -0
  28. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/pyqrack_cuda_complex128.egg-info/top_level.txt +0 -0
  29. {pyqrack_cuda_complex128-1.72.1 → pyqrack_cuda_complex128-1.73.0}/setup.cfg +0 -0
@@ -6,6 +6,16 @@ UNAME_S := $(shell uname -s)
6
6
  UNAME_P := $(shell uname -p)
7
7
  QRACK_PRESENT := $(wildcard qrack/.)
8
8
 
9
+ ifeq ("$(wildcard /usr/local/bin/cmake)", "/usr/local/bin/cmake")
10
+ CMAKE_L := /usr/local/bin/cmake
11
+ else
12
+ ifeq ("$(wildcard /usr/bin/cmake)", "/usr/bin/cmake")
13
+ CMAKE_L := /usr/bin/cmake
14
+ else
15
+ CMAKE_L := cmake
16
+ endif
17
+ endif
18
+
9
19
  .PHONY: help
10
20
  help:
11
21
  @echo "Please use \`make <target>' where <target> is one of"
@@ -20,21 +30,22 @@ build-deps:
20
30
  rm -rf pyqrack/qrack_system/qrack_cl_precompile
21
31
  ifneq ($(OS),Windows_NT)
22
32
  ifeq ($(QRACK_PRESENT),)
23
- git clone https://github.com/unitaryfund/qrack.git; cd qrack; git checkout b4356a13c230ebba7d75fc3f45a4a7c5344a20f2; cd ..
33
+ git clone https://github.com/unitaryfund/qrack.git; cd qrack; git checkout 909992056900c61d53ea85dfac2febb4d0c87951; cd ..
24
34
  endif
25
35
  mkdir -p qrack/build
26
36
  ifeq ($(UNAME_S),Linux)
27
37
  ifeq ($(UNAME_P),x86_64)
28
- cd qrack/build; cmake -DENABLE_RDRAND=OFF -DENABLE_DEVRAND=ON -DENABLE_OPENCL=OFF -DENABLE_CUDA=ON -DQBCAPPOW=11 -DFPPOW=6 ..; make qrack_pinvoke
38
+ cd qrack/build; $(CMAKE_L) -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DENABLE_OPENCL=OFF -DENABLE_CUDA=ON -DENABLE_RDRAND=OFF -DENABLE_DEVRAND=ON -DQBCAPPOW=8 -DFPPOW=6 -DCPP_STD=17 ..; make qrack_pinvoke qrack_cl_precompile
29
39
  else
30
- cd qrack/build; cmake -DENABLE_RDRAND=OFF -DENABLE_DEVRAND=ON -DENABLE_COMPLEX_X2=OFF -DENABLE_SSE3=OFF -DENABLE_OPENCL=OFF -DENABLE_CUDA=ON -DQBCAPPOW=11 -DFPPOW=6 ..; make qrack_pinvoke
40
+ cd qrack/build; $(CMAKE_L) -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DENABLE_OPENCL=OFF -DENABLE_CUDA=ON -DENABLE_RDRAND=OFF -DENABLE_DEVRAND=ON -DENABLE_COMPLEX_X2=OFF -DENABLE_SSE3=OFF -DQBCAPPOW=8 -DFPPOW=6 -DCPP_STD=17 ..; make qrack_pinvoke qrack_cl_precompile
31
41
  endif
32
42
  endif
33
43
  ifeq ($(UNAME_S),Darwin)
34
44
  ifeq ($(UNAME_P),x86_64)
35
- cd qrack/build; cmake -DENABLE_OPENCL=OFF -DENABLE_CUDA=ON -DQBCAPPOW=11 -DFPPOW=6 -DBoost_INCLUDE_DIR=/opt/homebrew/include -DBoost_LIBRARY_DIRS=/opt/homebrew/lib ..; make qrack_pinvoke
45
+ cd qrack/build; cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DENABLE_OPENCL=OFF -DENABLE_CUDA=ON -DQBCAPPOW=8 ..; make qrack_pinvoke qrack_cl_precompile
36
46
  else
37
- cd qrack/build; cmake -DENABLE_RDRAND=OFF -DENABLE_COMPLEX_X2=OFF -DENABLE_SSE3=OFF -DENABLE_OPENCL=OFF -DENABLE_CUDA=ON -DQBCAPPOW=11 -DFPPOW=6 -DBoost_INCLUDE_DIR=/opt/homebrew/include -DBoost_LIBRARY_DIRS=/opt/homebrew/lib ..; make qrack_pinvoke
47
+ cd qrack/build; cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DENABLE_OPENCL=OFF -DENABLE_RDRAND=OFF -DENABLE_COMPLEX_X2=OFF -DENABLE_SSE3=OFF -DQBCAPPOW=8 ..; make qrack_pinvoke qrack_cl_precompile
48
+ endif
38
49
  endif
39
50
  endif
40
51
  mkdir pyqrack/qrack_system/qrack_lib; cp qrack/build/libqrack_pinvoke.* pyqrack/qrack_system/qrack_lib/; cd ../../..
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyqrack-cuda-complex128
3
- Version: 1.72.1
3
+ Version: 1.73.0
4
4
  Summary: pyqrack - Pure Python vm6502q/qrack Wrapper
5
5
  Home-page: https://github.com/vm6502q/pyqrack
6
6
  Author: Daniel Strano
@@ -3322,6 +3322,41 @@ class QrackSimulator:
3322
3322
  Qrack.qrack_lib.SetNoiseParameter(self.sid, np)
3323
3323
  self._throw_if_error()
3324
3324
 
3325
+ def set_ace_max_qb(self, qb):
3326
+ """Set "automatic circuit elision" (ACE) max qubits
3327
+
3328
+ If isSchmidtDecompose=True, maximum entangled subsytem size
3329
+ of this simulator will be capped to 'qb', and entangling
3330
+ gates that would exceed that size are replaced with gate
3331
+ shadows.
3332
+
3333
+ Args:
3334
+ qb: maximum subsystem qubits
3335
+
3336
+ Raises:
3337
+ RuntimeError: QrackSimulator raised an exception.
3338
+ """
3339
+ Qrack.qrack_lib.SetAceMaxQb(self.sid, qb)
3340
+ self._throw_if_error()
3341
+
3342
+ def set_sparse_ace_max_mb(self, mb):
3343
+ """Set sparse "automatic circuit elision" (ACE) max memory
3344
+
3345
+ If isSchmidtDecompose=True, isSparse=True, and
3346
+ isOpenCL=False, maximum subsytem size memory MB of this
3347
+ simulator will be capped to 'mb', and entangling gates
3348
+ that would exceed that size are replaced with gate
3349
+ shadows.
3350
+
3351
+ Args:
3352
+ mb: maximum subsystem memory in MB
3353
+
3354
+ Raises:
3355
+ RuntimeError: QrackSimulator raised an exception.
3356
+ """
3357
+ Qrack.qrack_lib.SetSparseAceMaxMb(self.sid, mb)
3358
+ self._throw_if_error()
3359
+
3325
3360
  def normalize(self):
3326
3361
  """Normalize the state
3327
3362
 
@@ -1219,6 +1219,12 @@ class QrackSystem:
1219
1219
  self.qrack_lib.SetNoiseParameter.restype = None
1220
1220
  self.qrack_lib.SetNoiseParameter.argtypes = [c_ulonglong, c_double]
1221
1221
 
1222
+ self.qrack_lib.SetAceMaxQb.restype = None
1223
+ self.qrack_lib.SetAceMaxQb.argtypes = [c_ulonglong, c_ulonglong]
1224
+
1225
+ self.qrack_lib.SetSparseAceMaxMb.restype = None
1226
+ self.qrack_lib.SetSparseAceMaxMb.argtypes = [c_ulonglong, c_size_t]
1227
+
1222
1228
  self.qrack_lib.Normalize.restype = None
1223
1229
  self.qrack_lib.Normalize.argtypes = [c_ulonglong]
1224
1230
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyqrack-cuda-complex128
3
- Version: 1.72.1
3
+ Version: 1.73.0
4
4
  Summary: pyqrack - Pure Python vm6502q/qrack Wrapper
5
5
  Home-page: https://github.com/vm6502q/pyqrack
6
6
  Author: Daniel Strano
@@ -7,7 +7,7 @@ from setuptools import setup
7
7
  from setuptools.command.build_py import build_py
8
8
 
9
9
 
10
- VERSION = "1.72.1"
10
+ VERSION = "1.73.0"
11
11
 
12
12
  # Read long description from README.
13
13
  README_PATH = os.path.join(os.path.abspath(os.path.dirname(__file__)), 'README.md')