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

Uploaded Source

Built Distributions

pyopencl-2021.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (862.0 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (860.2 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (879.0 kB view details)

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

pyopencl-2021.2.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (878.2 kB view details)

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

File details

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

File metadata

  • Download URL: pyopencl-2021.2.2.tar.gz
  • Upload date:
  • Size: 450.1 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.2.tar.gz
Algorithm Hash digest
SHA256 50876f16624bc623fa2eff98a91259761b51471e186f535d4d4e7bce58292f0c
MD5 e3d8a1592d84bacae178b6fef4b1fbf6
BLAKE2b-256 62e0fe21daf2c215a38890a27dc487b81f57e2fa0a26498fb9d291deb2d99217

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 17c1c2325b2e14aba7a5dd13bb83489d73f6fdc5c5a6bb8a0abf553e2bcf7715
MD5 338967bb13987ef36b5cacf2a0e69d5e
BLAKE2b-256 aefbf7178cf6e82e50ca863dde43c356b305ce5cad8b8a2c48479a56dcc0719e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7e0cb05c04b378dba9d9fd8d8164a1a4badf08d6284c60fca0e265928ab9f2bc
MD5 3482936080d22481807c3ab0ab4a5f86
BLAKE2b-256 ffcfd2d3fde45be40b4468a1494a2a6fbb99223dc5fa4d90f5ef55399ec24351

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a11948b87028e49d2e844cf106c1dcfae7f20385400ebad113adc4b7628b8752
MD5 d8682c644d4767bdaa9735be6445338e
BLAKE2b-256 54f3dff518aac1a06c9f1a2e9f95c6914524162f1f70652649596861e85fafb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3523024ebc5d27bc232c17a67a5d7e63f5dd19dce0960cb5a49484b9ff50c1b2
MD5 54171c4ef774973ac35efc85c1935f3c
BLAKE2b-256 b183c6e6b69a520e37b523ef763744c492f4290b7e1d528971e53617fc7d4a84

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