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.1.tar.gz (449.8 kB view details)

Uploaded Source

Built Distributions

pyopencl-2021.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (861.8 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (860.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (878.9 kB view details)

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

pyopencl-2021.2.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (878.1 kB view details)

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

File details

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

File metadata

  • Download URL: pyopencl-2021.2.1.tar.gz
  • Upload date:
  • Size: 449.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2

File hashes

Hashes for pyopencl-2021.2.1.tar.gz
Algorithm Hash digest
SHA256 9138f99a9b3ca7ee4baae23c9e53dc3d02dff5a2f30dbd1c4663af6707e60b67
MD5 14d0d764f5308bff974e75c1a2746621
BLAKE2b-256 9e5d946e16426ebb86459d53682497ef5bb78c37c65e6ea454fa25a1c4ce23e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dac2a23e947378c1ebbf13c0af9642df129f417c2837a750caf2c4608b9489ee
MD5 c43eb204b159855f537f8442c931582f
BLAKE2b-256 2d94c3bdfcae01e90b09f220b3d1d8d892270a41c8a07e5635dd0ed0b7f4660b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d9d0ea5833ee2f1937a3de2fd784791601b36951be40b2e08e117e82eec1e5b5
MD5 49c349ef86ba6846f7e20106b6d14143
BLAKE2b-256 e4d4c84296965c3cbb70a181dc00d0d18bf3d84db73d059f1f21ef62e1bdb8d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 31a1afa31c0f5884830bf827f36f080b132152d000b7216a557fde45a10c661e
MD5 115940c032b9ece86df993c6b0a37ee1
BLAKE2b-256 a5a6f09e43d1927520552973f6f333752046de768ae90a8fefaa400cc75fb32a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8a9f476a06145613489439ba57d074a5d80da90a2c2f37dac7c9329cb078923f
MD5 acb388a90dbe775a752c73439584b35f
BLAKE2b-256 45cd8975d731494028b0697840c9307f099b0ab1fd414cc5077f074390e1ba20

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