pyqrack-cuda 1.57.0__tar.gz → 1.58.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.
Files changed (29) hide show
  1. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/Makefile +1 -1
  2. {pyqrack_cuda-1.57.0/pyqrack_cuda.egg-info → pyqrack_cuda-1.58.0}/PKG-INFO +1 -1
  3. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_ace_backend.py +0 -22
  4. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_simulator.py +8 -0
  5. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_system/qrack_system.py +4 -1
  6. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0/pyqrack_cuda.egg-info}/PKG-INFO +1 -1
  7. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/setup.py +1 -1
  8. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/LICENSE +0 -0
  9. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/MANIFEST.in +0 -0
  10. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/README.md +0 -0
  11. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyproject.toml +0 -0
  12. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/__init__.py +0 -0
  13. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/neuron_activation_fn.py +0 -0
  14. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/pauli.py +0 -0
  15. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_circuit.py +0 -0
  16. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_neuron.py +0 -0
  17. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_neuron_torch_layer.py +0 -0
  18. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_stabilizer.py +0 -0
  19. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/qrack_system/__init__.py +0 -0
  20. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/quimb_circuit_type.py +0 -0
  21. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/stats/__init__.py +0 -0
  22. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/stats/load_quantized_data.py +0 -0
  23. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack/stats/quantize_by_range.py +0 -0
  24. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack_cuda.egg-info/SOURCES.txt +0 -0
  25. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack_cuda.egg-info/dependency_links.txt +0 -0
  26. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack_cuda.egg-info/not-zip-safe +0 -0
  27. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack_cuda.egg-info/requires.txt +0 -0
  28. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/pyqrack_cuda.egg-info/top_level.txt +0 -0
  29. {pyqrack_cuda-1.57.0 → pyqrack_cuda-1.58.0}/setup.cfg +0 -0
@@ -18,7 +18,7 @@ help:
18
18
  build-deps:
19
19
  ifneq ($(OS),Windows_NT)
20
20
  ifeq ($(QRACK_PRESENT),)
21
- git clone https://github.com/unitaryfund/qrack.git; cd qrack; git checkout f0738286f49fb0ffaeb46d6e5d2294dbfc7f6138; cd ..
21
+ git clone https://github.com/unitaryfund/qrack.git; cd qrack; git checkout 8c3f33832d334196836b10afe6765bb44326802d; cd ..
22
22
  endif
23
23
  mkdir -p qrack/build
24
24
  ifeq ($(UNAME_S),Linux)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyqrack-cuda
3
- Version: 1.57.0
3
+ Version: 1.58.0
4
4
  Summary: pyqrack - Pure Python vm6502q/qrack Wrapper
5
5
  Home-page: https://github.com/vm6502q/pyqrack
6
6
  Author: Daniel Strano
@@ -728,28 +728,6 @@ class QrackAceBackend:
728
728
  lq1_lr = len(hq1) == 1
729
729
  lq2_lr = len(hq2) == 1
730
730
 
731
- if lq1_lr and lq2_lr:
732
- connected = (lq1_col == lq2_col) or (
733
- (self.long_range_columns + 1) >= self._row_length
734
- )
735
- c = (lq1_col - 1) % self._row_length
736
- while not connected and self._is_col_long_range[c]:
737
- connected = lq2_col == c
738
- c = (c - 1) % self._row_length
739
- c = (lq1_col + 1) % self._row_length
740
- while not connected and self._is_col_long_range[c]:
741
- connected = lq2_col == c
742
- c = (c + 1) % self._row_length
743
-
744
- b1 = hq1[0]
745
- b2 = hq2[0]
746
- gate, shadow = self._get_gate(pauli, anti, b1[0])
747
- if connected:
748
- gate([b1[1]], b2[1])
749
- else:
750
- shadow(b1, b2)
751
- return
752
-
753
731
  self._correct(lq1)
754
732
 
755
733
  qb1, lhv1 = self._get_qb_lhv_indices(hq1)
@@ -122,6 +122,9 @@ class QrackSimulator:
122
122
  def _ulonglong_byref(self, a):
123
123
  return (ctypes.c_ulonglong * len(a))(*a)
124
124
 
125
+ def _longlong_byref(self, a):
126
+ return (ctypes.c_longlong * len(a))(*a)
127
+
125
128
  def _double_byref(self, a):
126
129
  return (ctypes.c_double * len(a))(*a)
127
130
 
@@ -190,6 +193,11 @@ class QrackSimulator:
190
193
  Qrack.qrack_lib.set_device(self.sid, d)
191
194
  self._throw_if_error()
192
195
 
196
+ def set_device_list(self, d):
197
+ """Set the GPU device ID"""
198
+ Qrack.qrack_lib.set_device_list(self.sid, len(d), self._longlong_byref(d))
199
+ self._throw_if_error()
200
+
193
201
  def clone(self):
194
202
  return QrackSimulator(cloneSid=self.sid)
195
203
 
@@ -144,7 +144,10 @@ class QrackSystem:
144
144
  self.qrack_lib.set_concurrency.argtypes = [c_ulonglong, c_ulonglong]
145
145
 
146
146
  self.qrack_lib.set_device.restype = None
147
- self.qrack_lib.set_device.argtypes = [c_ulonglong, c_ulonglong]
147
+ self.qrack_lib.set_device.argtypes = [c_ulonglong, c_longlong]
148
+
149
+ self.qrack_lib.set_device_list.restype = None
150
+ self.qrack_lib.set_device_list.argtypes = [c_ulonglong, c_ulonglong, POINTER(c_longlong)]
148
151
 
149
152
  # pseudo-quantum
150
153
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyqrack-cuda
3
- Version: 1.57.0
3
+ Version: 1.58.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.57.0"
10
+ VERSION = "1.58.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')
File without changes
File without changes
File without changes
File without changes