Skip to main content

Python wrapper for OpenCL

Project description

Gitlab Build Status Github Build Status Python Package Index Release Page

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:

  • Object cleanup tied to lifetime of objects. This idiom, often called RAII 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 as well as a Wiki.

  • Liberal license. PyOpenCL is open-source under the 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 using Conda on Linux and macOS (that also install a working OpenCL implementation!) can be found in the documentation.

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

  • gcc/g++ new enough to be compatible with pybind11 (see their FAQ)

  • numpy, and

  • an OpenCL implementation. (See this howto for how to get one.)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyopencl-2021.2.13.tar.gz (452.4 kB view details)

Uploaded Source

Built Distributions

pyopencl-2021.2.13-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.13-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (866.5 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.13-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (865.2 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.13-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (882.6 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.13-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (882.1 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

File details

Details for the file pyopencl-2021.2.13.tar.gz.

File metadata

  • Download URL: pyopencl-2021.2.13.tar.gz
  • Upload date:
  • Size: 452.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1

File hashes

Hashes for pyopencl-2021.2.13.tar.gz
Algorithm Hash digest
SHA256 8b969c3a9d4153adc6b0915301ffdf626a3784b869a964645de100ae60de7b06
MD5 92e55f070f29a61f4320b90a5c351e00
BLAKE2b-256 3877e7c4aa97fc433ac5252fabf0ae5f9955112f37e4453083bfd3526410db0e

See more details on using hashes here.

File details

Details for the file pyopencl-2021.2.13-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2021.2.13-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 65ca8cee2ea9f6d75fb9f74e1f32baea0fdcb7cbe0e384adf2025770dc6a518f
MD5 0fb68065f5619ed3e91541573957e31e
BLAKE2b-256 cda92893f950e0b5a14d5b6fadfeb2dd097fb6db3cc0f533381c355d99b36ddc

See more details on using hashes here.

File details

Details for the file pyopencl-2021.2.13-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2021.2.13-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ceb241ff325bebc3a789b48361d2e2219734faad44ac6da0207a5cc05801a7fe
MD5 a54f38f9872f9f23fdc7e2500c284e2f
BLAKE2b-256 4117b08d245aa640585c0b2024d6bd17aed64300fa3e9ba8e728a066446a05fe

See more details on using hashes here.

File details

Details for the file pyopencl-2021.2.13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2021.2.13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3999944ac61f532902be0d416b4d3397129109944472403cac1769e78b27d076
MD5 15303d57fd9d13d94e76eff16065a804
BLAKE2b-256 6e9dc2120715aa982f40a22cf35c704260494f538d947d3822e93e7cead162ba

See more details on using hashes here.

File details

Details for the file pyopencl-2021.2.13-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2021.2.13-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a0d6edb44601db834868e5078951c911fa1486da353060341c35540a202c27b3
MD5 4737c1156755754e84ee71078b2b21e1
BLAKE2b-256 e47a862bc4870c4ecd78fdd256ab63a0597961838d4744d7c4f1a8c4a684350f

See more details on using hashes here.

File details

Details for the file pyopencl-2021.2.13-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2021.2.13-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f050ddd81442abfa84e7295a809fa25e27e82a229b37997577360aacec31449c
MD5 de2d2796fcb59d5eb14c79cc3dae085e
BLAKE2b-256 f742a402b5141e74d14da21581430adc7b8ae52579b30f2fbbee8060da36bb6c

See more details on using hashes here.

File details

Details for the file pyopencl-2021.2.13-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2021.2.13-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 086b031fafabb222077c6bd5df5754141b2bfe1bc378711c4eb4745cd36fdf03
MD5 d2dcb9115653d277876f423b357acced
BLAKE2b-256 e4ac25230e221dd67a4b14b3f86158489181ba71ea583e8dad5ef3e67182bf0d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page