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

Uploaded Source

Built Distributions

pyopencl-2021.2.7-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (827.6 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (861.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (861.2 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (879.3 kB view details)

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

pyopencl-2021.2.7-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (878.7 kB view details)

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

File details

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

File metadata

  • Download URL: pyopencl-2021.2.7.tar.gz
  • Upload date:
  • Size: 450.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.7

File hashes

Hashes for pyopencl-2021.2.7.tar.gz
Algorithm Hash digest
SHA256 1f44e550cd67f1ebc0fe9a745cc988ddd4c1debde2e527e39180900bd4c84fd0
MD5 6b09b010b085dd184b21aca8aaf0fd1e
BLAKE2b-256 8e7e588ac2ddf8f5111b4457f82f832253027b4d650d14960721f5e18d95edf1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.7-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 416b1788d0732a553f421c4efcf36593c2754248448a08bb682f12ea27acdac8
MD5 39cecb8a28b6136a76c69716aafa5e33
BLAKE2b-256 af04e6623ca15fd7eef88f6d94ad8ea0ec1201d9b320c930b5114c51cb7a7286

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ed471053946a5a03954423b628e4cf22056c5c72102eb8aa2f2f5543df807b0d
MD5 18947ee4a12ba23e98f8d8f99810a41f
BLAKE2b-256 792d9749f215171efdce9afc65cc2ad837abd5f60968f4bcd7a6098a1f879a59

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0c27db5d0c9bfc39cebe0358fd9459610eb928438beb68bbb6b146162bbf390f
MD5 9c7186e98b48a31fd39dbf3e97548961
BLAKE2b-256 9911d01b0d35c47d85f3f154dec7e32fcbf6ea0a3c417c18174633866b60014e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4a4ff61b676ddfb5b952f51e0cc3ae1b19424d98402394209e0b02b87150aefc
MD5 e856f19eade0496fbfbd5ff9bb20b38e
BLAKE2b-256 00b8589e7c4adb27fc8059d819cecbbe5378761a2ca797ec4dca8f961a1854b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.7-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4406bf27487308f35b7706696c13e6d7a32cf126a364f3f270dccef69b0501cf
MD5 7f218f662346c2524831439a9e0a1c7a
BLAKE2b-256 7519bed55f9b0a62525ec2f5ed166465f45a191df160c21c4a129fffc2e2461e

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