pyopencl


Namepyopencl JSON
Version 2025.2.6 PyPI version JSON
download
home_pageNone
SummaryPython wrapper for OpenCL
upload_time2025-07-27 19:58:23
maintainerNone
docs_urlNone
authorNone
requires_python~=3.10
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            PyOpenCL: Pythonic Access to OpenCL, with Arrays and Algorithms
===============================================================

.. |badge-gitlab-ci| image:: https://gitlab.tiker.net/inducer/pyopencl/badges/main/pipeline.svg
    :alt: Gitlab Build Status
    :target: https://gitlab.tiker.net/inducer/pyopencl/commits/main
.. |badge-github-ci| image:: https://github.com/inducer/pyopencl/actions/workflows/ci.yml/badge.svg
    :alt: Github Build Status
    :target: https://github.com/inducer/pyopencl/actions/workflows/ci.yml
.. |badge-pypi| image:: https://badge.fury.io/py/pyopencl.svg
    :alt: Python Package Index Release Page
    :target: https://pypi.org/project/pyopencl/
.. |badge-zenodo| image:: https://zenodo.org/badge/1575307.svg
    :alt: Zenodo DOI for latest release
    :target: https://zenodo.org/badge/latestdoi/1575307

|badge-gitlab-ci| |badge-github-ci| |badge-pypi| |badge-zenodo|

PyOpenCL lets you access GPUs and other massively parallel compute
devices from Python. It tries to offer computing goodness in the
spirit of its sister project `PyCUDA <https://mathema.tician.de/software/pycuda>`__:

* Object cleanup tied to lifetime of objects. This idiom, often
  called `RAII <https://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization>`__
  in C++, makes it much easier to write correct, leak- and
  crash-free code.

* Completeness. PyOpenCL puts the full power of OpenCL's API at
  your disposal, if you wish.  Every obscure ``get_info()`` query and
  all CL calls are accessible.

* Automatic Error Checking. All CL errors are automatically
  translated into Python exceptions.

* Speed. PyOpenCL's base layer is written in C++, so all the niceties
  above are virtually free.

* Helpful and complete `Documentation <https://documen.tician.de/pyopencl>`__
  as well as a `Wiki <https://wiki.tiker.net/PyOpenCL>`__.

* Liberal license. PyOpenCL is open-source under the
  `MIT license <https://en.wikipedia.org/wiki/MIT_License>`__
  and free for commercial, academic, and private use.

* Broad support. PyOpenCL was tested and works with Apple's, AMD's, and Nvidia's
  CL implementations.

Simple 4-step `install instructions <https://documen.tician.de/pyopencl/misc.html#installation>`__
using Conda on Linux and macOS (that also install a working OpenCL implementation!)
can be found in the `documentation <https://documen.tician.de/pyopencl/>`__.

What you'll need if you do *not* want to use the convenient instructions above and
instead build from source:

* g++/clang new enough to be compatible with nanobind (specifically, full support of C++17 is needed)
* `numpy <https://numpy.org>`__, and
* an OpenCL implementation. (See this `howto <https://wiki.tiker.net/OpenCLHowTo>`__
  for how to get one.)

Links
-----

* `Documentation <https://documen.tician.de/pyopencl>`__
  (read how things work)
* `Python package index <https://pypi.python.org/pypi/pyopencl>`__
  (download releases, including binary wheels for Linux, macOS, Windows)
* `Conda Forge <https://anaconda.org/conda-forge/pyopencl>`__
  (download binary packages for Linux, macOS, Windows)
* `Github <https://github.com/inducer/pyopencl>`__
  (get latest source code, file bugs)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pyopencl",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "~=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "Andreas Kloeckner <inform@tiker.net>",
    "download_url": "https://files.pythonhosted.org/packages/36/b6/89c2784aea28e58ffbc5d0205bafe49448a65b04c792a5cf0f345950ce86/pyopencl-2025.2.6.tar.gz",
    "platform": null,
    "description": "PyOpenCL: Pythonic Access to OpenCL, with Arrays and Algorithms\n===============================================================\n\n.. |badge-gitlab-ci| image:: https://gitlab.tiker.net/inducer/pyopencl/badges/main/pipeline.svg\n    :alt: Gitlab Build Status\n    :target: https://gitlab.tiker.net/inducer/pyopencl/commits/main\n.. |badge-github-ci| image:: https://github.com/inducer/pyopencl/actions/workflows/ci.yml/badge.svg\n    :alt: Github Build Status\n    :target: https://github.com/inducer/pyopencl/actions/workflows/ci.yml\n.. |badge-pypi| image:: https://badge.fury.io/py/pyopencl.svg\n    :alt: Python Package Index Release Page\n    :target: https://pypi.org/project/pyopencl/\n.. |badge-zenodo| image:: https://zenodo.org/badge/1575307.svg\n    :alt: Zenodo DOI for latest release\n    :target: https://zenodo.org/badge/latestdoi/1575307\n\n|badge-gitlab-ci| |badge-github-ci| |badge-pypi| |badge-zenodo|\n\nPyOpenCL lets you access GPUs and other massively parallel compute\ndevices from Python. It tries to offer computing goodness in the\nspirit of its sister project `PyCUDA <https://mathema.tician.de/software/pycuda>`__:\n\n* Object cleanup tied to lifetime of objects. This idiom, often\n  called `RAII <https://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization>`__\n  in C++, makes it much easier to write correct, leak- and\n  crash-free code.\n\n* Completeness. PyOpenCL puts the full power of OpenCL's API at\n  your disposal, if you wish.  Every obscure ``get_info()`` query and\n  all CL calls are accessible.\n\n* Automatic Error Checking. All CL errors are automatically\n  translated into Python exceptions.\n\n* Speed. PyOpenCL's base layer is written in C++, so all the niceties\n  above are virtually free.\n\n* Helpful and complete `Documentation <https://documen.tician.de/pyopencl>`__\n  as well as a `Wiki <https://wiki.tiker.net/PyOpenCL>`__.\n\n* Liberal license. PyOpenCL is open-source under the\n  `MIT license <https://en.wikipedia.org/wiki/MIT_License>`__\n  and free for commercial, academic, and private use.\n\n* Broad support. PyOpenCL was tested and works with Apple's, AMD's, and Nvidia's\n  CL implementations.\n\nSimple 4-step `install instructions <https://documen.tician.de/pyopencl/misc.html#installation>`__\nusing Conda on Linux and macOS (that also install a working OpenCL implementation!)\ncan be found in the `documentation <https://documen.tician.de/pyopencl/>`__.\n\nWhat you'll need if you do *not* want to use the convenient instructions above and\ninstead build from source:\n\n* g++/clang new enough to be compatible with nanobind (specifically, full support of C++17 is needed)\n* `numpy <https://numpy.org>`__, and\n* an OpenCL implementation. (See this `howto <https://wiki.tiker.net/OpenCLHowTo>`__\n  for how to get one.)\n\nLinks\n-----\n\n* `Documentation <https://documen.tician.de/pyopencl>`__\n  (read how things work)\n* `Python package index <https://pypi.python.org/pypi/pyopencl>`__\n  (download releases, including binary wheels for Linux, macOS, Windows)\n* `Conda Forge <https://anaconda.org/conda-forge/pyopencl>`__\n  (download binary packages for Linux, macOS, Windows)\n* `Github <https://github.com/inducer/pyopencl>`__\n  (get latest source code, file bugs)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Python wrapper for OpenCL",
    "version": "2025.2.6",
    "project_urls": {
        "Documentation": "https://documen.tician.de/pyopencl",
        "Homepage": "https://mathema.tician.de/software/pyopencl",
        "Repository": "https://github.com/inducer/pyopencl"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "644791fc8734b6fd502d365d32230e0d1c9baa50bb54bbc2ab0c3d1361724911",
                "md5": "cd7a77251c1c058877e0b28b51511c18",
                "sha256": "8f03b99e412458d7bbcd8c09c9576109088959e9a8f8489e66c17a6926e158e3"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp310-cp310-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "cd7a77251c1c058877e0b28b51511c18",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "~=3.10",
            "size": 445480,
            "upload_time": "2025-07-27T19:57:53",
            "upload_time_iso_8601": "2025-07-27T19:57:53.876958Z",
            "url": "https://files.pythonhosted.org/packages/64/47/91fc8734b6fd502d365d32230e0d1c9baa50bb54bbc2ab0c3d1361724911/pyopencl-2025.2.6-cp310-cp310-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "740d46572d32807ac1e5f8dc765a6faf5bd443426dca824fd9815de52ffee83e",
                "md5": "52c9c1c80d4e1d0071049799903a0d1f",
                "sha256": "5fd0f568fa76536748101dcef1ce86e7914e63f36701bbff27aee597ffc9336f"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "52c9c1c80d4e1d0071049799903a0d1f",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "~=3.10",
            "size": 427665,
            "upload_time": "2025-07-27T19:57:55",
            "upload_time_iso_8601": "2025-07-27T19:57:55.868218Z",
            "url": "https://files.pythonhosted.org/packages/74/0d/46572d32807ac1e5f8dc765a6faf5bd443426dca824fd9815de52ffee83e/pyopencl-2025.2.6-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "eb57ab1e5f8345549ba85391145563b43c300af4458621f09afaa07a790500ab",
                "md5": "424e50967805e289f42d37ee58490396",
                "sha256": "bcf5c27a3fd5fb4df366f9b4f6f39aebbf5c269210f80de9bd6bebd96054c103"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "424e50967805e289f42d37ee58490396",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "~=3.10",
            "size": 734440,
            "upload_time": "2025-07-27T19:57:57",
            "upload_time_iso_8601": "2025-07-27T19:57:57.436018Z",
            "url": "https://files.pythonhosted.org/packages/eb/57/ab1e5f8345549ba85391145563b43c300af4458621f09afaa07a790500ab/pyopencl-2025.2.6-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4957b301db5e4e80fb5555fffc5b07364d5d8362446d4bbde438a8dab1718db5",
                "md5": "7582e839facfc224d3849d4112d82bdf",
                "sha256": "62aff1988869177219eea741f4e8183bf36e6743a7178ce607c68857cf7fa0df"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp310-cp310-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7582e839facfc224d3849d4112d82bdf",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "~=3.10",
            "size": 1227087,
            "upload_time": "2025-07-27T19:57:58",
            "upload_time_iso_8601": "2025-07-27T19:57:58.931923Z",
            "url": "https://files.pythonhosted.org/packages/49/57/b301db5e4e80fb5555fffc5b07364d5d8362446d4bbde438a8dab1718db5/pyopencl-2025.2.6-cp310-cp310-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2c9147c7623b2f2488d38a31ccf5d725eade4d5b32ee1b747ad266b639eeb5ed",
                "md5": "ceb585ab0d2c2e3fcfb4d32cf62af454",
                "sha256": "1fbd6a532fd0591660af227536c81fb25751a92986ee93214cc6657165503720"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "ceb585ab0d2c2e3fcfb4d32cf62af454",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "~=3.10",
            "size": 472874,
            "upload_time": "2025-07-27T19:58:00",
            "upload_time_iso_8601": "2025-07-27T19:58:00.540989Z",
            "url": "https://files.pythonhosted.org/packages/2c/91/47c7623b2f2488d38a31ccf5d725eade4d5b32ee1b747ad266b639eeb5ed/pyopencl-2025.2.6-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "66da0e3620821a2402328cf2dddc24c6016d05ecff1c868eb2250a7531d292c8",
                "md5": "bbd6b430e360d5ea99c8a8698aed5eb0",
                "sha256": "73d9b424d3e67c4de40b3d8c967cac4afcecf4534c1a1921aad8ec79957113e6"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp311-cp311-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "bbd6b430e360d5ea99c8a8698aed5eb0",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": "~=3.10",
            "size": 445944,
            "upload_time": "2025-07-27T19:58:01",
            "upload_time_iso_8601": "2025-07-27T19:58:01.663811Z",
            "url": "https://files.pythonhosted.org/packages/66/da/0e3620821a2402328cf2dddc24c6016d05ecff1c868eb2250a7531d292c8/pyopencl-2025.2.6-cp311-cp311-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "de6ef5033b2e8a13ada7d28eb928179ad620587dcc4cfc59193272369dc4764a",
                "md5": "06a0dbc325991007630044a2eb5338bd",
                "sha256": "eba426f7fb4f3d6cc94a69d86f35eab5b48ccdf8aba4e567c05be101b8a1d2dc"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "06a0dbc325991007630044a2eb5338bd",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": "~=3.10",
            "size": 428085,
            "upload_time": "2025-07-27T19:58:02",
            "upload_time_iso_8601": "2025-07-27T19:58:02.862833Z",
            "url": "https://files.pythonhosted.org/packages/de/6e/f5033b2e8a13ada7d28eb928179ad620587dcc4cfc59193272369dc4764a/pyopencl-2025.2.6-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dae594e206c0710ba9ec4fb3268e096b18d05f99bed7be2f15c6429095be2493",
                "md5": "5c893b66a021fdebf962558fdf4dd97b",
                "sha256": "34b4758d9db3127813e59e06f5dfd413e01a62609aeaa68e1489b507aa8d58a3"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "5c893b66a021fdebf962558fdf4dd97b",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": "~=3.10",
            "size": 734759,
            "upload_time": "2025-07-27T19:58:04",
            "upload_time_iso_8601": "2025-07-27T19:58:04.738980Z",
            "url": "https://files.pythonhosted.org/packages/da/e5/94e206c0710ba9ec4fb3268e096b18d05f99bed7be2f15c6429095be2493/pyopencl-2025.2.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "da3d81dc89606cda4f3647a50d5b8e17904109e2faf83960a5308eb0d6fa7563",
                "md5": "d91a6d294e322ae782503eab8fe9858b",
                "sha256": "d320de97034f1864ed4142e843f2b597427a14b0979a621e77e96b4d38dfb5fc"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp311-cp311-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d91a6d294e322ae782503eab8fe9858b",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": "~=3.10",
            "size": 1227391,
            "upload_time": "2025-07-27T19:58:06",
            "upload_time_iso_8601": "2025-07-27T19:58:06.201829Z",
            "url": "https://files.pythonhosted.org/packages/da/3d/81dc89606cda4f3647a50d5b8e17904109e2faf83960a5308eb0d6fa7563/pyopencl-2025.2.6-cp311-cp311-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "30f36f19f3c1d5ee8b9cb983982f3d91d90d0af118298e5c82f96c39c89bd0c9",
                "md5": "1cd010c39366c46b61a2dcd09f0b64a3",
                "sha256": "77e5df74d41fedab3d0cef709ec695ba89ae4f22e2a2538797228be3977177be"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "1cd010c39366c46b61a2dcd09f0b64a3",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": "~=3.10",
            "size": 473057,
            "upload_time": "2025-07-27T19:58:07",
            "upload_time_iso_8601": "2025-07-27T19:58:07.449306Z",
            "url": "https://files.pythonhosted.org/packages/30/f3/6f19f3c1d5ee8b9cb983982f3d91d90d0af118298e5c82f96c39c89bd0c9/pyopencl-2025.2.6-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d07d69b8afd15ee33217fe5b1c4e4ace3cb7462aaebc043f6fec1e30d464ce92",
                "md5": "843c05bac97da2035826fbb785122edc",
                "sha256": "56a11709ede52515bc289942e71fbbecf81c538acf6d6019149accc44872a6b8"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp312-cp312-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "843c05bac97da2035826fbb785122edc",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": "~=3.10",
            "size": 447295,
            "upload_time": "2025-07-27T19:58:09",
            "upload_time_iso_8601": "2025-07-27T19:58:09.085759Z",
            "url": "https://files.pythonhosted.org/packages/d0/7d/69b8afd15ee33217fe5b1c4e4ace3cb7462aaebc043f6fec1e30d464ce92/pyopencl-2025.2.6-cp312-cp312-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1973336bd449e776feff267a00c27cc98fd389c4bca7dc768a955d37b83e68f6",
                "md5": "316cda24018197f58a8cf039370e7add",
                "sha256": "71b212d4a1c260e56802ecb214233f808689d107b157ab832df8feff6ebdf5fc"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "316cda24018197f58a8cf039370e7add",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": "~=3.10",
            "size": 427818,
            "upload_time": "2025-07-27T19:58:10",
            "upload_time_iso_8601": "2025-07-27T19:58:10.676832Z",
            "url": "https://files.pythonhosted.org/packages/19/73/336bd449e776feff267a00c27cc98fd389c4bca7dc768a955d37b83e68f6/pyopencl-2025.2.6-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "429c9160f25d7e02931451d4850c4f90343766ed46f09405d4d0e63dcdf83b7e",
                "md5": "42a19e02d954c3565b5f8d864592ea33",
                "sha256": "41415bebe19c4eb08a7a2314fe74357cbd3b7a283f67c3ae592e2a45bc061824"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "42a19e02d954c3565b5f8d864592ea33",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": "~=3.10",
            "size": 732690,
            "upload_time": "2025-07-27T19:58:12",
            "upload_time_iso_8601": "2025-07-27T19:58:12.222555Z",
            "url": "https://files.pythonhosted.org/packages/42/9c/9160f25d7e02931451d4850c4f90343766ed46f09405d4d0e63dcdf83b7e/pyopencl-2025.2.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "46341161bf6738291f043cf65d27be13cdf7375f16bcdeae94b3cffe031682b9",
                "md5": "1972f8509fcab1899644234604169d34",
                "sha256": "76458c4d7ec9abe8771af910815a67e35c595192ad1b7bfeecb2dc53588fe604"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp312-cp312-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1972f8509fcab1899644234604169d34",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": "~=3.10",
            "size": 1223212,
            "upload_time": "2025-07-27T19:58:13",
            "upload_time_iso_8601": "2025-07-27T19:58:13.548929Z",
            "url": "https://files.pythonhosted.org/packages/46/34/1161bf6738291f043cf65d27be13cdf7375f16bcdeae94b3cffe031682b9/pyopencl-2025.2.6-cp312-cp312-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bebc1130f4c8dbc17d8896685c909f82d1b0960e131d5ec08b823bf0cfd7cb1b",
                "md5": "92d192ab6faa1347d33419f84a008cd7",
                "sha256": "54e45ee5ccf31cee44a43b32cbd4268a6428c9194da61283b107cc4395415965"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "92d192ab6faa1347d33419f84a008cd7",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": "~=3.10",
            "size": 473146,
            "upload_time": "2025-07-27T19:58:14",
            "upload_time_iso_8601": "2025-07-27T19:58:14.781999Z",
            "url": "https://files.pythonhosted.org/packages/be/bc/1130f4c8dbc17d8896685c909f82d1b0960e131d5ec08b823bf0cfd7cb1b/pyopencl-2025.2.6-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "719f56a5fe0f0f882663fdad94c4977776ee4e157fde50ad60faede7aebf2252",
                "md5": "786f6518eb22ae19d8ee5148a600e261",
                "sha256": "771b7d5e18114d7053e255a8d1bbfd2ad7dae9d87a04e51b5a0656951d49f124"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp313-cp313-macosx_10_14_x86_64.whl",
            "has_sig": false,
            "md5_digest": "786f6518eb22ae19d8ee5148a600e261",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": "~=3.10",
            "size": 447213,
            "upload_time": "2025-07-27T19:58:16",
            "upload_time_iso_8601": "2025-07-27T19:58:16.376939Z",
            "url": "https://files.pythonhosted.org/packages/71/9f/56a5fe0f0f882663fdad94c4977776ee4e157fde50ad60faede7aebf2252/pyopencl-2025.2.6-cp313-cp313-macosx_10_14_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a067a65ec5158a4333cef53c6f2d97d96c233d941c12fe459ad584a4c1148e14",
                "md5": "cd4cc7250a538a37dd8aa89b00499f2e",
                "sha256": "fd50ccbb00d6b072e284626192feedc708b09d3039815e06cea539a9119e1030"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "cd4cc7250a538a37dd8aa89b00499f2e",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": "~=3.10",
            "size": 427675,
            "upload_time": "2025-07-27T19:58:17",
            "upload_time_iso_8601": "2025-07-27T19:58:17.741133Z",
            "url": "https://files.pythonhosted.org/packages/a0/67/a65ec5158a4333cef53c6f2d97d96c233d941c12fe459ad584a4c1148e14/pyopencl-2025.2.6-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c866c7399b7469e7f55311ee0ff3088701795319aa1bad2f3922c55346d96a24",
                "md5": "c8cc15ddbea736044b2324ec26998f70",
                "sha256": "547fc6e059fb79d0a0f5ecde9abf1d2f560a581da4cdadaaaaa6cee29795dffc"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c8cc15ddbea736044b2324ec26998f70",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": "~=3.10",
            "size": 732672,
            "upload_time": "2025-07-27T19:58:19",
            "upload_time_iso_8601": "2025-07-27T19:58:19.103760Z",
            "url": "https://files.pythonhosted.org/packages/c8/66/c7399b7469e7f55311ee0ff3088701795319aa1bad2f3922c55346d96a24/pyopencl-2025.2.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "713eefc513a578e1b691cb3321049d198f970f8dc4e9587390fffc8cde536d76",
                "md5": "e4eab111f315e565a3dc997fedad3ef4",
                "sha256": "7721efb301754bf4fc1a8858f38750d7855891a21c009bbb2dd81448b44ae0e9"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp313-cp313-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e4eab111f315e565a3dc997fedad3ef4",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": "~=3.10",
            "size": 1223044,
            "upload_time": "2025-07-27T19:58:20",
            "upload_time_iso_8601": "2025-07-27T19:58:20.383067Z",
            "url": "https://files.pythonhosted.org/packages/71/3e/efc513a578e1b691cb3321049d198f970f8dc4e9587390fffc8cde536d76/pyopencl-2025.2.6-cp313-cp313-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a19543ace46583383cf6ec905151149da23bdad5251008f2e3585d165e32685a",
                "md5": "bc96fe48af539a66ad70e7b2ffbe104f",
                "sha256": "fd56049be789226977b19e39b1a80f6798ccb9a6701a8ef252047216222f0fde"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "bc96fe48af539a66ad70e7b2ffbe104f",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": "~=3.10",
            "size": 473096,
            "upload_time": "2025-07-27T19:58:21",
            "upload_time_iso_8601": "2025-07-27T19:58:21.766242Z",
            "url": "https://files.pythonhosted.org/packages/a1/95/43ace46583383cf6ec905151149da23bdad5251008f2e3585d165e32685a/pyopencl-2025.2.6-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "36b689c2784aea28e58ffbc5d0205bafe49448a65b04c792a5cf0f345950ce86",
                "md5": "b1dbacbfbbf91e376788c5c6dd900f65",
                "sha256": "874d94078a25df5d6c8b6d1db9c37d65feff3837b7afd7e2db9717e91fac01fd"
            },
            "downloads": -1,
            "filename": "pyopencl-2025.2.6.tar.gz",
            "has_sig": false,
            "md5_digest": "b1dbacbfbbf91e376788c5c6dd900f65",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "~=3.10",
            "size": 444857,
            "upload_time": "2025-07-27T19:58:23",
            "upload_time_iso_8601": "2025-07-27T19:58:23.169360Z",
            "url": "https://files.pythonhosted.org/packages/36/b6/89c2784aea28e58ffbc5d0205bafe49448a65b04c792a5cf0f345950ce86/pyopencl-2025.2.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-27 19:58:23",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "inducer",
    "github_project": "pyopencl",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyopencl"
}
        
Elapsed time: 2.31155s