pyopencl 2024.2.2__cp312-cp312-win_amd64.whl → 2024.2.5__cp312-cp312-win_amd64.whl

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 pyopencl might be problematic. Click here for more details.

Files changed (99) hide show
  1. pyopencl/__init__.py +16 -4
  2. pyopencl/_cl.cp312-win_amd64.pyd +0 -0
  3. pyopencl/algorithm.py +3 -1
  4. pyopencl/bitonic_sort.py +2 -0
  5. pyopencl/characterize/__init__.py +23 -0
  6. pyopencl/compyte/.git +1 -0
  7. pyopencl/compyte/.gitignore +21 -0
  8. pyopencl/compyte/ndarray/Makefile +31 -0
  9. pyopencl/compyte/ndarray/gpu_ndarray.h +35 -0
  10. pyopencl/compyte/ndarray/pygpu_language.h +207 -0
  11. pyopencl/compyte/ndarray/pygpu_language_cuda.cu +622 -0
  12. pyopencl/compyte/ndarray/pygpu_language_opencl.cpp +317 -0
  13. pyopencl/compyte/ndarray/pygpu_ndarray.cpp +1546 -0
  14. pyopencl/compyte/ndarray/pygpu_ndarray.h +71 -0
  15. pyopencl/compyte/ndarray/pygpu_ndarray_object.h +232 -0
  16. pyopencl/tools.py +60 -56
  17. pyopencl/version.py +9 -3
  18. {pyopencl-2024.2.2.dist-info → pyopencl-2024.2.5.dist-info}/METADATA +105 -105
  19. pyopencl-2024.2.5.dist-info/RECORD +56 -0
  20. {pyopencl-2024.2.2.dist-info → pyopencl-2024.2.5.dist-info}/WHEEL +1 -1
  21. pyopencl-2024.2.2.data/data/CITATION.cff +0 -74
  22. pyopencl-2024.2.2.data/data/CMakeLists.txt +0 -83
  23. pyopencl-2024.2.2.data/data/Makefile.in +0 -21
  24. pyopencl-2024.2.2.data/data/README.rst +0 -70
  25. pyopencl-2024.2.2.data/data/README_SETUP.txt +0 -34
  26. pyopencl-2024.2.2.data/data/aksetup_helper.py +0 -1013
  27. pyopencl-2024.2.2.data/data/configure.py +0 -6
  28. pyopencl-2024.2.2.data/data/contrib/cldis.py +0 -91
  29. pyopencl-2024.2.2.data/data/contrib/fortran-to-opencl/README +0 -29
  30. pyopencl-2024.2.2.data/data/contrib/fortran-to-opencl/translate.py +0 -1441
  31. pyopencl-2024.2.2.data/data/contrib/pyopencl.vim +0 -84
  32. pyopencl-2024.2.2.data/data/doc/Makefile +0 -23
  33. pyopencl-2024.2.2.data/data/doc/algorithm.rst +0 -214
  34. pyopencl-2024.2.2.data/data/doc/array.rst +0 -305
  35. pyopencl-2024.2.2.data/data/doc/conf.py +0 -26
  36. pyopencl-2024.2.2.data/data/doc/howto.rst +0 -105
  37. pyopencl-2024.2.2.data/data/doc/index.rst +0 -137
  38. pyopencl-2024.2.2.data/data/doc/make_constants.py +0 -561
  39. pyopencl-2024.2.2.data/data/doc/misc.rst +0 -885
  40. pyopencl-2024.2.2.data/data/doc/runtime.rst +0 -51
  41. pyopencl-2024.2.2.data/data/doc/runtime_const.rst +0 -30
  42. pyopencl-2024.2.2.data/data/doc/runtime_gl.rst +0 -78
  43. pyopencl-2024.2.2.data/data/doc/runtime_memory.rst +0 -527
  44. pyopencl-2024.2.2.data/data/doc/runtime_platform.rst +0 -184
  45. pyopencl-2024.2.2.data/data/doc/runtime_program.rst +0 -364
  46. pyopencl-2024.2.2.data/data/doc/runtime_queue.rst +0 -182
  47. pyopencl-2024.2.2.data/data/doc/subst.rst +0 -36
  48. pyopencl-2024.2.2.data/data/doc/tools.rst +0 -4
  49. pyopencl-2024.2.2.data/data/doc/types.rst +0 -42
  50. pyopencl-2024.2.2.data/data/examples/black-hole-accretion.py +0 -2227
  51. pyopencl-2024.2.2.data/data/examples/demo-struct-reduce.py +0 -75
  52. pyopencl-2024.2.2.data/data/examples/demo.py +0 -39
  53. pyopencl-2024.2.2.data/data/examples/demo_array.py +0 -32
  54. pyopencl-2024.2.2.data/data/examples/demo_array_svm.py +0 -37
  55. pyopencl-2024.2.2.data/data/examples/demo_elementwise.py +0 -34
  56. pyopencl-2024.2.2.data/data/examples/demo_elementwise_complex.py +0 -53
  57. pyopencl-2024.2.2.data/data/examples/demo_mandelbrot.py +0 -183
  58. pyopencl-2024.2.2.data/data/examples/demo_meta_codepy.py +0 -56
  59. pyopencl-2024.2.2.data/data/examples/demo_meta_template.py +0 -55
  60. pyopencl-2024.2.2.data/data/examples/dump-performance.py +0 -38
  61. pyopencl-2024.2.2.data/data/examples/dump-properties.py +0 -86
  62. pyopencl-2024.2.2.data/data/examples/gl_interop_demo.py +0 -84
  63. pyopencl-2024.2.2.data/data/examples/gl_particle_animation.py +0 -218
  64. pyopencl-2024.2.2.data/data/examples/ipython-demo.ipynb +0 -203
  65. pyopencl-2024.2.2.data/data/examples/median-filter.py +0 -99
  66. pyopencl-2024.2.2.data/data/examples/n-body.py +0 -1070
  67. pyopencl-2024.2.2.data/data/examples/narray.py +0 -37
  68. pyopencl-2024.2.2.data/data/examples/noisyImage.jpg +0 -0
  69. pyopencl-2024.2.2.data/data/examples/pi-monte-carlo.py +0 -1166
  70. pyopencl-2024.2.2.data/data/examples/svm.py +0 -82
  71. pyopencl-2024.2.2.data/data/examples/transpose.py +0 -229
  72. pyopencl-2024.2.2.data/data/pytest.ini +0 -3
  73. pyopencl-2024.2.2.data/data/src/bitlog.cpp +0 -51
  74. pyopencl-2024.2.2.data/data/src/bitlog.hpp +0 -83
  75. pyopencl-2024.2.2.data/data/src/clinfo_ext.h +0 -134
  76. pyopencl-2024.2.2.data/data/src/mempool.hpp +0 -444
  77. pyopencl-2024.2.2.data/data/src/pyopencl_ext.h +0 -77
  78. pyopencl-2024.2.2.data/data/src/tools.hpp +0 -90
  79. pyopencl-2024.2.2.data/data/src/wrap_cl.cpp +0 -61
  80. pyopencl-2024.2.2.data/data/src/wrap_cl.hpp +0 -5853
  81. pyopencl-2024.2.2.data/data/src/wrap_cl_part_1.cpp +0 -369
  82. pyopencl-2024.2.2.data/data/src/wrap_cl_part_2.cpp +0 -702
  83. pyopencl-2024.2.2.data/data/src/wrap_constants.cpp +0 -1274
  84. pyopencl-2024.2.2.data/data/src/wrap_helpers.hpp +0 -213
  85. pyopencl-2024.2.2.data/data/src/wrap_mempool.cpp +0 -738
  86. pyopencl-2024.2.2.data/data/test/add-vectors-32.spv +0 -0
  87. pyopencl-2024.2.2.data/data/test/add-vectors-64.spv +0 -0
  88. pyopencl-2024.2.2.data/data/test/empty-header.h +0 -1
  89. pyopencl-2024.2.2.data/data/test/test_algorithm.py +0 -1180
  90. pyopencl-2024.2.2.data/data/test/test_array.py +0 -2392
  91. pyopencl-2024.2.2.data/data/test/test_arrays_in_structs.py +0 -100
  92. pyopencl-2024.2.2.data/data/test/test_clmath.py +0 -529
  93. pyopencl-2024.2.2.data/data/test/test_clrandom.py +0 -75
  94. pyopencl-2024.2.2.data/data/test/test_enqueue_copy.py +0 -271
  95. pyopencl-2024.2.2.data/data/test/test_wrapper.py +0 -1565
  96. pyopencl-2024.2.2.dist-info/LICENSE +0 -282
  97. pyopencl-2024.2.2.dist-info/RECORD +0 -123
  98. pyopencl-2024.2.2.dist-info/top_level.txt +0 -1
  99. {pyopencl-2024.2.2.data/data → pyopencl-2024.2.5.dist-info/licenses}/LICENSE +0 -0
@@ -1,105 +1,105 @@
1
- Metadata-Version: 2.1
2
- Name: pyopencl
3
- Version: 2024.2.2
4
- Summary: Python wrapper for OpenCL
5
- Home-page: http://mathema.tician.de/software/pyopencl
6
- Author: Andreas Kloeckner
7
- Author-email: inform@tiker.net
8
- License: MIT
9
- Classifier: Environment :: Console
10
- Classifier: Development Status :: 5 - Production/Stable
11
- Classifier: Intended Audience :: Developers
12
- Classifier: Intended Audience :: Other Audience
13
- Classifier: Intended Audience :: Science/Research
14
- Classifier: License :: OSI Approved :: MIT License
15
- Classifier: Natural Language :: English
16
- Classifier: Programming Language :: C++
17
- Classifier: Programming Language :: Python
18
- Classifier: Programming Language :: Python :: 3
19
- Classifier: Topic :: Scientific/Engineering
20
- Classifier: Topic :: Scientific/Engineering :: Mathematics
21
- Classifier: Topic :: Scientific/Engineering :: Physics
22
- Requires-Python: ~=3.8
23
- License-File: LICENSE
24
- Requires-Dist: numpy
25
- Requires-Dist: pytools >=2022.1.13
26
- Requires-Dist: platformdirs >=2.2.0
27
- Requires-Dist: importlib-resources ; python_version < "3.9"
28
- Provides-Extra: oclgrind
29
- Requires-Dist: oclgrind-binary-distribution >=18.3 ; extra == 'oclgrind'
30
- Provides-Extra: pocl
31
- Requires-Dist: pocl-binary-distribution >=1.2 ; extra == 'pocl'
32
- Provides-Extra: test
33
- Requires-Dist: pytest >=7.0.0 ; extra == 'test'
34
- Requires-Dist: Mako ; extra == 'test'
35
-
36
- PyOpenCL: Pythonic Access to OpenCL, with Arrays and Algorithms
37
- ===============================================================
38
-
39
- .. |badge-gitlab-ci| image:: https://gitlab.tiker.net/inducer/pyopencl/badges/main/pipeline.svg
40
- :alt: Gitlab Build Status
41
- :target: https://gitlab.tiker.net/inducer/pyopencl/commits/main
42
- .. |badge-github-ci| image:: https://github.com/inducer/pyopencl/workflows/CI/badge.svg?branch=main&event=push
43
- :alt: Github Build Status
44
- :target: https://github.com/inducer/pyopencl/actions?query=branch%3Amain+workflow%3ACI+event%3Apush
45
- .. |badge-pypi| image:: https://badge.fury.io/py/pyopencl.svg
46
- :alt: Python Package Index Release Page
47
- :target: https://pypi.org/project/pyopencl/
48
- .. |badge-zenodo| image:: https://zenodo.org/badge/1575307.svg
49
- :alt: Zenodo DOI for latest release
50
- :target: https://zenodo.org/badge/latestdoi/1575307
51
-
52
- |badge-gitlab-ci| |badge-github-ci| |badge-pypi| |badge-zenodo|
53
-
54
- PyOpenCL lets you access GPUs and other massively parallel compute
55
- devices from Python. It tries to offer computing goodness in the
56
- spirit of its sister project `PyCUDA <https://mathema.tician.de/software/pycuda>`__:
57
-
58
- * Object cleanup tied to lifetime of objects. This idiom, often
59
- called `RAII <https://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization>`__
60
- in C++, makes it much easier to write correct, leak- and
61
- crash-free code.
62
-
63
- * Completeness. PyOpenCL puts the full power of OpenCL's API at
64
- your disposal, if you wish. Every obscure ``get_info()`` query and
65
- all CL calls are accessible.
66
-
67
- * Automatic Error Checking. All CL errors are automatically
68
- translated into Python exceptions.
69
-
70
- * Speed. PyOpenCL's base layer is written in C++, so all the niceties
71
- above are virtually free.
72
-
73
- * Helpful and complete `Documentation <https://documen.tician.de/pyopencl>`__
74
- as well as a `Wiki <https://wiki.tiker.net/PyOpenCL>`__.
75
-
76
- * Liberal license. PyOpenCL is open-source under the
77
- `MIT license <https://en.wikipedia.org/wiki/MIT_License>`__
78
- and free for commercial, academic, and private use.
79
-
80
- * Broad support. PyOpenCL was tested and works with Apple's, AMD's, and Nvidia's
81
- CL implementations.
82
-
83
- Simple 4-step `install instructions <https://documen.tician.de/pyopencl/misc.html#installation>`__
84
- using Conda on Linux and macOS (that also install a working OpenCL implementation!)
85
- can be found in the `documentation <https://documen.tician.de/pyopencl/>`__.
86
-
87
- What you'll need if you do *not* want to use the convenient instructions above and
88
- instead build from source:
89
-
90
- * g++/clang new enough to be compatible with nanobind (specifically, full support of C++17 is needed)
91
- * `numpy <https://numpy.org>`__, and
92
- * an OpenCL implementation. (See this `howto <https://wiki.tiker.net/OpenCLHowTo>`__
93
- for how to get one.)
94
-
95
- Links
96
- -----
97
-
98
- * `Documentation <https://documen.tician.de/pyopencl>`__
99
- (read how things work)
100
- * `Python package index <https://pypi.python.org/pypi/pyopencl>`__
101
- (download releases, including binary wheels for Linux, macOS, Windows)
102
- * `Conda Forge <https://anaconda.org/conda-forge/pyopencl>`__
103
- (download binary packages for Linux, macOS, Windows)
104
- * `Github <https://github.com/inducer/pyopencl>`__
105
- (get latest source code, file bugs)
1
+ Metadata-Version: 2.1
2
+ Name: pyopencl
3
+ Version: 2024.2.5
4
+ Summary: Python wrapper for OpenCL
5
+ Author-Email: Andreas Kloeckner <inform@tiker.net>
6
+ Classifier: Development Status :: 5 - Production/Stable
7
+ Classifier: Environment :: Console
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: Intended Audience :: Other Audience
10
+ Classifier: Intended Audience :: Science/Research
11
+ Classifier: License :: OSI Approved :: MIT License
12
+ Classifier: Natural Language :: English
13
+ Classifier: Programming Language :: C++
14
+ Classifier: Programming Language :: Python
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Topic :: Scientific/Engineering
17
+ Classifier: Topic :: Scientific/Engineering :: Mathematics
18
+ Classifier: Topic :: Scientific/Engineering :: Physics
19
+ Project-URL: Homepage, https://mathema.tician.de/software/pyopencl
20
+ Project-URL: Documentation, https://documen.tician.de/pyopencl
21
+ Project-URL: Repository, https://github.com/inducer/pyopencl
22
+ Requires-Python: ~=3.8
23
+ Requires-Dist: importlib-resources; python_version < "3.9"
24
+ Requires-Dist: numpy
25
+ Requires-Dist: platformdirs>=2.2.0
26
+ Requires-Dist: pytools>=2022.1.13
27
+ Requires-Dist: oclgrind_binary_distribution>=18.3; extra == "oclgrind"
28
+ Requires-Dist: pocl_binary_distribution>=1.2; extra == "pocl"
29
+ Requires-Dist: Mako; extra == "test"
30
+ Requires-Dist: pytest>=7.0.0; extra == "test"
31
+ Provides-Extra: oclgrind
32
+ Provides-Extra: pocl
33
+ Provides-Extra: test
34
+ Description-Content-Type: text/x-rst
35
+
36
+ PyOpenCL: Pythonic Access to OpenCL, with Arrays and Algorithms
37
+ ===============================================================
38
+
39
+ .. |badge-gitlab-ci| image:: https://gitlab.tiker.net/inducer/pyopencl/badges/main/pipeline.svg
40
+ :alt: Gitlab Build Status
41
+ :target: https://gitlab.tiker.net/inducer/pyopencl/commits/main
42
+ .. |badge-github-ci| image:: https://github.com/inducer/pyopencl/workflows/CI/badge.svg?branch=main&event=push
43
+ :alt: Github Build Status
44
+ :target: https://github.com/inducer/pyopencl/actions?query=branch%3Amain+workflow%3ACI+event%3Apush
45
+ .. |badge-pypi| image:: https://badge.fury.io/py/pyopencl.svg
46
+ :alt: Python Package Index Release Page
47
+ :target: https://pypi.org/project/pyopencl/
48
+ .. |badge-zenodo| image:: https://zenodo.org/badge/1575307.svg
49
+ :alt: Zenodo DOI for latest release
50
+ :target: https://zenodo.org/badge/latestdoi/1575307
51
+
52
+ |badge-gitlab-ci| |badge-github-ci| |badge-pypi| |badge-zenodo|
53
+
54
+ PyOpenCL lets you access GPUs and other massively parallel compute
55
+ devices from Python. It tries to offer computing goodness in the
56
+ spirit of its sister project `PyCUDA <https://mathema.tician.de/software/pycuda>`__:
57
+
58
+ * Object cleanup tied to lifetime of objects. This idiom, often
59
+ called `RAII <https://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization>`__
60
+ in C++, makes it much easier to write correct, leak- and
61
+ crash-free code.
62
+
63
+ * Completeness. PyOpenCL puts the full power of OpenCL's API at
64
+ your disposal, if you wish. Every obscure ``get_info()`` query and
65
+ all CL calls are accessible.
66
+
67
+ * Automatic Error Checking. All CL errors are automatically
68
+ translated into Python exceptions.
69
+
70
+ * Speed. PyOpenCL's base layer is written in C++, so all the niceties
71
+ above are virtually free.
72
+
73
+ * Helpful and complete `Documentation <https://documen.tician.de/pyopencl>`__
74
+ as well as a `Wiki <https://wiki.tiker.net/PyOpenCL>`__.
75
+
76
+ * Liberal license. PyOpenCL is open-source under the
77
+ `MIT license <https://en.wikipedia.org/wiki/MIT_License>`__
78
+ and free for commercial, academic, and private use.
79
+
80
+ * Broad support. PyOpenCL was tested and works with Apple's, AMD's, and Nvidia's
81
+ CL implementations.
82
+
83
+ Simple 4-step `install instructions <https://documen.tician.de/pyopencl/misc.html#installation>`__
84
+ using Conda on Linux and macOS (that also install a working OpenCL implementation!)
85
+ can be found in the `documentation <https://documen.tician.de/pyopencl/>`__.
86
+
87
+ What you'll need if you do *not* want to use the convenient instructions above and
88
+ instead build from source:
89
+
90
+ * g++/clang new enough to be compatible with nanobind (specifically, full support of C++17 is needed)
91
+ * `numpy <https://numpy.org>`__, and
92
+ * an OpenCL implementation. (See this `howto <https://wiki.tiker.net/OpenCLHowTo>`__
93
+ for how to get one.)
94
+
95
+ Links
96
+ -----
97
+
98
+ * `Documentation <https://documen.tician.de/pyopencl>`__
99
+ (read how things work)
100
+ * `Python package index <https://pypi.python.org/pypi/pyopencl>`__
101
+ (download releases, including binary wheels for Linux, macOS, Windows)
102
+ * `Conda Forge <https://anaconda.org/conda-forge/pyopencl>`__
103
+ (download binary packages for Linux, macOS, Windows)
104
+ * `Github <https://github.com/inducer/pyopencl>`__
105
+ (get latest source code, file bugs)
@@ -0,0 +1,56 @@
1
+ pyopencl/__init__.py,sha256=Fyeu2A8r8dEzo8yDZcXNT-UAJE_ZSIJD_pFKz9kp4wc,83513
2
+ pyopencl/_cl.cp312-win_amd64.pyd,sha256=1d9NyeQU-P1MACCPM7kOy4wJAUk-gQVZiM6kITooGvY,572416
3
+ pyopencl/_cluda.py,sha256=5coLt4eR5BOLgfUesgnaTx_nUhZ6BBhYi9dodvl7cbc,2128
4
+ pyopencl/_mymako.py,sha256=MKVghtWIXkYppStYGfz2VcaK6qCZ6ICzloMCEE4ee0M,624
5
+ pyopencl/algorithm.py,sha256=_TYrGd-bY0fDT5wPvkLlIvZMoKFM_lcI-VZ7KfsMS7Q,52711
6
+ pyopencl/array.py,sha256=kU8ifBb6p10PEc6Lj_VLHAl-N2uhVtnP5KSJdHUAis0,115144
7
+ pyopencl/bitonic_sort.py,sha256=SNsyWNATAMs5GGLSkUILxkKF2DdONo8_EpBK01rZOWQ,8200
8
+ pyopencl/bitonic_sort_templates.py,sha256=CzjCacG-YgzzXb0ia0oMKT27RlmmWdRtO2w4_OJrnTA,16766
9
+ pyopencl/cache.py,sha256=uwIl76P7kcapH1OZEmHzPBmkQFKLOVd0o9enYI8cU94,16493
10
+ pyopencl/capture_call.py,sha256=ydQPYy8AyWmDf8amCZaiBIvzEOPvPRzIwtecOu1kR4g,5837
11
+ pyopencl/characterize/__init__.py,sha256=rBhH9M6wkp2fYs51vx9BHgNVl-N1Vz_2ofV0uhPsGk0,14802
12
+ pyopencl/characterize/performance.py,sha256=xwyt4SsABo4LipXzjRF7TKz8LVBcLmZZ5os6f7hp3Go,7103
13
+ pyopencl/cl/pyopencl-airy.cl,sha256=HSUEWbUN2MNzuhvDP3LB9dVY_3dhjFSWXhvGQsrA8VA,8446
14
+ pyopencl/cl/pyopencl-bessel-j-complex.cl,sha256=XOUBUZFxgra9nUAymnbJugcOa1lQyj-fwiZA9ly3rdI,6264
15
+ pyopencl/cl/pyopencl-bessel-j.cl,sha256=V16uWa8t1b0oxNHRCLhCqxzR-28yr-5ZslqHkw2Ved0,24358
16
+ pyopencl/cl/pyopencl-bessel-y.cl,sha256=kD6u2qtgmrNNq75w5uaxHdrvb6oeeTPgrGpF29ERsuE,12732
17
+ pyopencl/cl/pyopencl-complex.h,sha256=DHFUM2sHCv50m4LJvvIpF8sMWc5yOO6kYu9nWlScl6A,8847
18
+ pyopencl/cl/pyopencl-eval-tbl.cl,sha256=SDYB_RkW7jtN_Y_xhCbwGjBSNmBpMg8T4ZXlrP_2q9U,2736
19
+ pyopencl/cl/pyopencl-hankel-complex.cl,sha256=yrxPF4wgr9bTzG4SyJsVbij5SODoJvWaDRDDuo4zrs4,32005
20
+ pyopencl/cl/pyopencl-random123/array.h,sha256=oTYPJfU7s4IXy8xRc3H0rqMq4mgyVxd7UuLSf3liUPY,17413
21
+ pyopencl/cl/pyopencl-random123/openclfeatures.h,sha256=jauJ1WEspr-YNefAuUwPhapl_JQDVa6my_h4fLl-p4o,2974
22
+ pyopencl/cl/pyopencl-random123/philox.cl,sha256=KqPbLt54UwrHPvBe7v4ZMzqI2oGrzp0c0QzqVhydNCY,22226
23
+ pyopencl/cl/pyopencl-random123/threefry.cl,sha256=bC78-HJVuc4AFiNppglDQiN8cZRD45hG1PPdi4Sdt-o,55563
24
+ pyopencl/clmath.py,sha256=GL9s0YwKpCgvsGl6ndoWXEngPFWAqRRR_HOoQm57OA8,8502
25
+ pyopencl/clrandom.py,sha256=5RS-1duIm-sauChyd8VjBden3DLqfdjp4D9Csnk6BRg,13451
26
+ pyopencl/cltypes.py,sha256=2jCvMMBtkhXxfbBFBfM4NSFKRg7kEo1tlwGJQlyiwmQ,4955
27
+ pyopencl/compyte/.git,sha256=hqjyvpQvk3kzLjhnlN4Ht1Pgj7gEz1d0hTK9YSPe5T8,44
28
+ pyopencl/compyte/.gitignore,sha256=PFMRSJycIqPtcpEn7VqbcenWJqHFDuYtwQm_tLbADt8,189
29
+ pyopencl/compyte/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
+ pyopencl/compyte/array.py,sha256=IJzw-dSS_injEiLVNHLlSRi0R2F1sO_8xeeK-XezsSo,7636
31
+ pyopencl/compyte/dtypes.py,sha256=nEieOLmnNJQcU6sNJJoBe7qZXAqu4sOgHQXKC8SGDi8,10099
32
+ pyopencl/compyte/ndarray/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
+ pyopencl/compyte/ndarray/gen_elemwise.py,sha256=5NlbUth3Reu2ag6DmCp_JjPcIoF6Af4w5cuAg3h9-W4,78727
34
+ pyopencl/compyte/ndarray/gen_reduction.py,sha256=BElJhHtAdmL5gkTqeHY1yMe0eYMoDcQWIBSQvsxVc_4,57826
35
+ pyopencl/compyte/ndarray/gpu_ndarray.h,sha256=Ji02dMlp7ZGBCODfr43UIp_bxMG5GIrSLM-UlpCHbOk,1040
36
+ pyopencl/compyte/ndarray/Makefile,sha256=-dQIN5YQMUibWFTrS6AULvVg4xHsscpndJgD5I6L27E,1266
37
+ pyopencl/compyte/ndarray/pygpu_language.h,sha256=k3WOwdxSdqjjix0RPl1IIFrB_Y1s0mzcMVwTuqBY4Hw,7256
38
+ pyopencl/compyte/ndarray/pygpu_language_cuda.cu,sha256=MtmiYZfui-v3q9w7fNgl1BrJzAkNJiw5Hk4RXXqnAdg,29945
39
+ pyopencl/compyte/ndarray/pygpu_language_opencl.cpp,sha256=U_wcdA848sIFuRkkSCe36OMwAE0d37717mpR9MANy8k,8263
40
+ pyopencl/compyte/ndarray/pygpu_ndarray.cpp,sha256=10vRhLLRWkhB4BuEeUt39hMadtUhZCZaCmsE_dCpe3Y,53071
41
+ pyopencl/compyte/ndarray/pygpu_ndarray.h,sha256=sev2JF5tBU0QKT56Fc7wcT6N3bcfy5ND6HMA0RlYZg8,1736
42
+ pyopencl/compyte/ndarray/pygpu_ndarray_object.h,sha256=LyC78nKfoOgmzLxFw45LKNrT4GhrzWkZOlfsXSjJ_eg,9291
43
+ pyopencl/compyte/ndarray/setup_opencl.py,sha256=XSF-qDieVIEaHph25gTs3fg8A4okd3fESfbiyX7yRTA,3910
44
+ pyopencl/compyte/ndarray/test_gpu_elemwise.py,sha256=83Ju3lNNU8BcSvqG6QbgcHx_VbVo_-0vVwEBrmYjWtw,18849
45
+ pyopencl/compyte/ndarray/test_gpu_ndarray.py,sha256=GHBG4TlGxQD2VxJi6p-UPidR8Uy2QJakfp40EsWuEhM,18268
46
+ pyopencl/elementwise.py,sha256=-4L6OtCEQyaNuJJOYq0y36P_TVp0OXs8Zy4oqG8OkZw,39766
47
+ pyopencl/invoker.py,sha256=NC8lq8kKjP0VhEByN5AI-mcasBchUZadtMrJ0_UjHws,14412
48
+ pyopencl/ipython_ext.py,sha256=5Le00IDI2iGP4VtqeHln6YBJOweGuXcr_HsdPEDzGwc,1982
49
+ pyopencl/reduction.py,sha256=FiOAQy0ZjkD7-JrwI7pD98IWIbPZoEnSuil_LY3RcOU,26304
50
+ pyopencl/scan.py,sha256=guvNQBejjEPq5g9u9PUyMpVchprfdBvBlrp4-ZB-uvo,67398
51
+ pyopencl/tools.py,sha256=ILqLyTdSXQlUwJxDXKPbu5nwuqschsFLjy48TmRqMyk,47510
52
+ pyopencl/version.py,sha256=Fp_v5G59_24Um9NujHpex3VRwdffKTwtN8tjiQl5QOQ,276
53
+ pyopencl-2024.2.5.dist-info/METADATA,sha256=8a7shvaPQtnTN1WLHY1h9N2Ix-RaTV-rDwEKuBz3qhc,4671
54
+ pyopencl-2024.2.5.dist-info/WHEEL,sha256=QGejE-29qHdvo-x9pCICVWVWKdrsgc_rseByQp_tx9U,105
55
+ pyopencl-2024.2.5.dist-info/licenses/LICENSE,sha256=jib9h6nV8oAvCkKPKDecpLakmQi1SktCn4YXmllgySY,15566
56
+ pyopencl-2024.2.5.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: skbuild 0.17.6
2
+ Generator: scikit-build-core 0.9.5
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp312-cp312-win_amd64
5
5
 
@@ -1,74 +0,0 @@
1
- cff-version: 1.2.0
2
- message: "If you use this software, please cite it as below."
3
- authors:
4
- - family-names: "Kloeckner"
5
- given-names: "Andreas"
6
- orcid: "https://orcid.org/0000-0003-1228-519X"
7
- - family-names: "Yu"
8
- given-names: "Yichao"
9
- - family-names: "Wala"
10
- given-names: "Matt"
11
- - family-names: "Fernando"
12
- given-names: "Isuru"
13
- - family-names: "Bencun"
14
- given-names: "Marko"
15
- - family-names: "Kulkarni"
16
- given-names: "Kaushik"
17
- - family-names: "Diener"
18
- given-names: "Matthias"
19
- - family-names: "Gao"
20
- given-names: "Hao"
21
- - family-names: "Fikl"
22
- given-names: "Alex"
23
- - family-names: "Weiner"
24
- given-names: "Zach"
25
- - family-names: "Weigert"
26
- given-names: "Martin"
27
- - family-names: "Palmer"
28
- given-names: "Rebecca"
29
- - family-names: "Latham"
30
- given-names: "Shane"
31
- - family-names: "Magno"
32
- given-names: "Gonçalo"
33
- - family-names: "Fuller"
34
- given-names: "Henry"
35
- - family-names: "Mackenzie"
36
- given-names: "Jonathan"
37
- - family-names: "Niarchos"
38
- given-names: "Sotiris"
39
- - family-names: "Gill"
40
- given-names: "Shahzaib"
41
- - family-names: "Gohlke"
42
- given-names: "Christoph"
43
- - family-names: "Bhosale"
44
- given-names: "Aditya"
45
- - family-names: "Rothberg"
46
- given-names: "Alex"
47
- - family-names: "Ey"
48
- given-names: "Emanuel"
49
- - family-names: "Rapp"
50
- given-names: "Holger"
51
- - family-names: "van der Walt"
52
- given-names: "Stefan"
53
- # Removed pending resolution of https://github.com/zenodo/zenodo/issues/2343
54
- # - alias: "gw0"
55
- - family-names: "Thalhammer"
56
- given-names: "Gregor"
57
- - family-names: "Kieffer"
58
- given-names: "Jerome"
59
- - family-names: "Poliarnyi"
60
- given-names: "Nikolai"
61
- - family-names: "Bollinger"
62
- given-names: "Drew"
63
- - family-names: "Nitz"
64
- given-names: "Alex"
65
- - family-names: "Bokota"
66
- given-names: "Grzegorz"
67
- orcid: 'https://orcid.org/0000-0002-5470-1676'
68
-
69
- title: "PyOpenCL"
70
- version: 2022.1.3
71
- doi: 10.5281/zenodo.6533956
72
- date-released: 2022-03-10
73
- url: "https://github.com/inducer/pyopencl"
74
- license: MIT
@@ -1,83 +0,0 @@
1
- cmake_minimum_required(VERSION 3.17...3.22)
2
-
3
- project(pyopencl)
4
-
5
- if (NOT SKBUILD)
6
- message(FATAL_ERROR "This CMake file should be executed via scikit-build. "
7
- "Please run\n$ pip install .")
8
- endif()
9
-
10
- # {{{ Constrain FindPython to find the Python version used by scikit-build
11
-
12
- if (SKBUILD)
13
- message(STATUS "Python_VERSION ${PYTHON_VERSION_STRING}")
14
- message(STATUS "Python_EXECUTABLE ${PYTHON_EXECUTABLE}")
15
- message(STATUS "Python_INCLUDE_DIR ${PYTHON_INCLUDE_DIR}")
16
- message(STATUS "Python_LIBRARIES ${PYTHON_LIBRARY}")
17
- set(Python_VERSION "${PYTHON_VERSION_STRING}")
18
- set(Python_EXECUTABLE "${PYTHON_EXECUTABLE}")
19
- set(Python_INCLUDE_DIR "${PYTHON_INCLUDE_DIR}")
20
- set(Python_LIBRARIES "${PYTHON_LIBRARY}")
21
- endif()
22
- find_package(Python COMPONENTS Interpreter Development.Module REQUIRED)
23
-
24
- # }}}
25
-
26
- # {{{ Detect nanobind and import it
27
-
28
- execute_process(
29
- COMMAND
30
- "${PYTHON_EXECUTABLE}" -c "import nanobind; print(nanobind.cmake_dir())"
31
- OUTPUT_VARIABLE _tmp_dir
32
- OUTPUT_STRIP_TRAILING_WHITESPACE COMMAND_ECHO STDOUT)
33
- list(APPEND CMAKE_PREFIX_PATH "${_tmp_dir}")
34
-
35
- # }}}
36
-
37
- link_directories(${PYOPENCL_CL_LIB_DIRS})
38
-
39
- find_package(nanobind CONFIG REQUIRED)
40
- find_package(NumPy REQUIRED)
41
- find_package(OpenCL REQUIRED)
42
-
43
- include_directories(${OpenCL_INCLUDE_DIR} ${NumPy_INCLUDE_DIRS})
44
-
45
- nanobind_add_module(
46
- _cl
47
- NB_STATIC # Build static libnanobind (the extension module itself remains a shared library)
48
- src/wrap_constants.cpp
49
- src/wrap_cl.cpp
50
- src/wrap_cl_part_1.cpp
51
- src/wrap_cl_part_2.cpp
52
- src/wrap_mempool.cpp
53
- src/bitlog.cpp
54
- )
55
-
56
- target_link_libraries(_cl PRIVATE ${OpenCL_LIBRARY})
57
-
58
- target_compile_definitions(_cl
59
- PRIVATE
60
- PYGPU_PACKAGE=pyopencl
61
- PYGPU_PYOPENCL
62
- )
63
-
64
- if (PYOPENCL_PRETEND_CL_VERSION)
65
- target_compile_definitions(
66
- _cl PRIVATE PYOPENCL_PRETEND_CL_VERSION=${PYOPENCL_PRETEND_CL_VERSION})
67
- endif()
68
-
69
- if (PYOPENCL_ENABLE_GL)
70
- target_compile_definitions(_cl PRIVATE HAVE_GL=1)
71
- endif()
72
-
73
- if (PYOPENCL_TRACE)
74
- target_compile_definitions(_cl PRIVATE PYOPENCL_TRACE=1)
75
- endif()
76
-
77
- if (PYOPENCL_USE_SHIPPED_EXT)
78
- target_compile_definitions(_cl PRIVATE PYOPENCL_USE_SHIPPED_EXT=1)
79
- endif()
80
-
81
- install(TARGETS _cl LIBRARY DESTINATION .)
82
-
83
- # vim: foldmethod=marker:sw=2
@@ -1,21 +0,0 @@
1
- .PHONY : all install clean tags dist userdoc devdoc
2
-
3
- all: tags
4
- ${PYTHON_EXE} setup.py build
5
-
6
- dist:
7
- ${PYTHON_EXE} setup.py sdist
8
-
9
- install: tags
10
- ${PYTHON_EXE} setup.py install
11
-
12
- clean:
13
- rm -Rf build
14
- rm -f tags
15
-
16
- tags:
17
- ctags -R src || true
18
-
19
- tests:
20
- echo "running tests"
21
- find ./test -type f -name "*.py" -exec python {} \;
@@ -1,70 +0,0 @@
1
- PyOpenCL: Pythonic Access to OpenCL, with Arrays and Algorithms
2
- ===============================================================
3
-
4
- .. |badge-gitlab-ci| image:: https://gitlab.tiker.net/inducer/pyopencl/badges/main/pipeline.svg
5
- :alt: Gitlab Build Status
6
- :target: https://gitlab.tiker.net/inducer/pyopencl/commits/main
7
- .. |badge-github-ci| image:: https://github.com/inducer/pyopencl/workflows/CI/badge.svg?branch=main&event=push
8
- :alt: Github Build Status
9
- :target: https://github.com/inducer/pyopencl/actions?query=branch%3Amain+workflow%3ACI+event%3Apush
10
- .. |badge-pypi| image:: https://badge.fury.io/py/pyopencl.svg
11
- :alt: Python Package Index Release Page
12
- :target: https://pypi.org/project/pyopencl/
13
- .. |badge-zenodo| image:: https://zenodo.org/badge/1575307.svg
14
- :alt: Zenodo DOI for latest release
15
- :target: https://zenodo.org/badge/latestdoi/1575307
16
-
17
- |badge-gitlab-ci| |badge-github-ci| |badge-pypi| |badge-zenodo|
18
-
19
- PyOpenCL lets you access GPUs and other massively parallel compute
20
- devices from Python. It tries to offer computing goodness in the
21
- spirit of its sister project `PyCUDA <https://mathema.tician.de/software/pycuda>`__:
22
-
23
- * Object cleanup tied to lifetime of objects. This idiom, often
24
- called `RAII <https://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization>`__
25
- in C++, makes it much easier to write correct, leak- and
26
- crash-free code.
27
-
28
- * Completeness. PyOpenCL puts the full power of OpenCL's API at
29
- your disposal, if you wish. Every obscure ``get_info()`` query and
30
- all CL calls are accessible.
31
-
32
- * Automatic Error Checking. All CL errors are automatically
33
- translated into Python exceptions.
34
-
35
- * Speed. PyOpenCL's base layer is written in C++, so all the niceties
36
- above are virtually free.
37
-
38
- * Helpful and complete `Documentation <https://documen.tician.de/pyopencl>`__
39
- as well as a `Wiki <https://wiki.tiker.net/PyOpenCL>`__.
40
-
41
- * Liberal license. PyOpenCL is open-source under the
42
- `MIT license <https://en.wikipedia.org/wiki/MIT_License>`__
43
- and free for commercial, academic, and private use.
44
-
45
- * Broad support. PyOpenCL was tested and works with Apple's, AMD's, and Nvidia's
46
- CL implementations.
47
-
48
- Simple 4-step `install instructions <https://documen.tician.de/pyopencl/misc.html#installation>`__
49
- using Conda on Linux and macOS (that also install a working OpenCL implementation!)
50
- can be found in the `documentation <https://documen.tician.de/pyopencl/>`__.
51
-
52
- What you'll need if you do *not* want to use the convenient instructions above and
53
- instead build from source:
54
-
55
- * g++/clang new enough to be compatible with nanobind (specifically, full support of C++17 is needed)
56
- * `numpy <https://numpy.org>`__, and
57
- * an OpenCL implementation. (See this `howto <https://wiki.tiker.net/OpenCLHowTo>`__
58
- for how to get one.)
59
-
60
- Links
61
- -----
62
-
63
- * `Documentation <https://documen.tician.de/pyopencl>`__
64
- (read how things work)
65
- * `Python package index <https://pypi.python.org/pypi/pyopencl>`__
66
- (download releases, including binary wheels for Linux, macOS, Windows)
67
- * `Conda Forge <https://anaconda.org/conda-forge/pyopencl>`__
68
- (download binary packages for Linux, macOS, Windows)
69
- * `Github <https://github.com/inducer/pyopencl>`__
70
- (get latest source code, file bugs)
@@ -1,34 +0,0 @@
1
- Hi, welcome.
2
-
3
- This Python package uses aksetup for installation, which means that
4
- installation should be easy and quick.
5
-
6
- If you don't want to continue reading, just try the regular
7
-
8
- ./configure.py --help
9
- ./configure.py --some-options
10
- make
11
- sudo make install
12
-
13
- That should do the trick. (By the way: If a config option says "several ok",
14
- then you may specify several values, separated by commas.)
15
-
16
- aksetup also supports regular distutils installation, without using
17
- configure:
18
-
19
- python setup.py build
20
- sudo python setup.py install
21
-
22
- In this case, configuration is obtained from files in this order:
23
-
24
- /etc/aksetup-defaults.py
25
- $HOME/.aksetup-defaults.py
26
- $PACKAGEDIR/siteconf.py
27
-
28
- Once you've run configure, you can copy options from your siteconf.py file to
29
- one of these files, and you won't ever have to configure them again manually.
30
- In fact, you may pass the options "--update-user" and "--update-global" to
31
- configure, and it will automatically update these files for you.
32
-
33
- This is particularly handy if you want to perform an unattended or automatic
34
- installation via easy_install.