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

Uploaded Source

Built Distributions

pyopencl-2021.2.11-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.11-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.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (866.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (866.0 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (882.2 kB view details)

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

pyopencl-2021.2.11-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (881.9 kB view details)

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

File details

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

File metadata

  • Download URL: pyopencl-2021.2.11.tar.gz
  • Upload date:
  • Size: 452.2 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.11.tar.gz
Algorithm Hash digest
SHA256 334a6cdde7ef18e4370604b9a1d6551b055e8828a4da004893f26091669b561b
MD5 17a46063b74a51d94cd385986f1c5758
BLAKE2b-256 1d9e3e9a0efec6f89169e9e7736577ba35037307b6e3456d759bf616e990bd2f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.11-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 93f0c93e0fb6607ba0ee9bd11165edaf6406bf303b4ec795c3d2caa2e44f394e
MD5 68e1cf85181cef51f877642ec34517e6
BLAKE2b-256 bd4ab1110cb960653587a000aabbbc6d779c5f684c82c0c15145fa67f31b6d07

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.11-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3678c8b02494e6d9627647c037aabed8244088d51cc6de8605f3854747985ac1
MD5 3c8e5a084833e260efaf8da28d7ae971
BLAKE2b-256 30c73706d43760ba4af8c8ff77210490b8d93c83ab52515801e91e35bf9892a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e007e4e932170f0343cf1ab7733a2568aa8fda89f9a62e02aa359066084ee5c9
MD5 a62fa2189627ff935a5bad500b058593
BLAKE2b-256 0f47a3fb890ad21f5bf66d9041d7e6a1fbe4913a2c299a46d7bc19ae26f312e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8bc2495cc4d78e8ca2358d3d14c5ba4b078cdbdb1a38e765a10c70e13df4871c
MD5 c10f9a594f1b544bf6b0b41ac503fc98
BLAKE2b-256 9341cc32392bac07bfe79d53922ec74b82d9fb4a15bb9ef8fb09882d8b74c687

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2042811175bc8c915f5b56d8aa43561a5c62d6a145d67309e1e3f93d3b964744
MD5 b9bc98b4a6ad3c62519c2d5fed59dded
BLAKE2b-256 aab0d6de503a60e0b6ac34a331cfc59d035dfa367cafb4898a8c88e1a0890905

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.11-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0a7cc1a461a4e57aa142b558b678fe23114aa6314d4a0c969bd2e2b5a02b65ad
MD5 b0b8d16f62694ff600faed35a2cb11e8
BLAKE2b-256 23a063a2c0592bb3052b54959ad418b54b6218cf08f7b22aa78d2c31fcaa8ac2

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