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

Uploaded Source

Built Distributions

pyopencl-2021.2.12-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.12-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.12-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.12-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (865.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2021.2.12-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.12-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.12.tar.gz.

File metadata

  • Download URL: pyopencl-2021.2.12.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.12.tar.gz
Algorithm Hash digest
SHA256 15f5016dffbf19d02a82d8139370f6d00e102d7489a60f5c32ce4aaa8b19cfbf
MD5 169611b19e3dfde268ef87ebfc16bbb3
BLAKE2b-256 62c57163d2e55e82b3f8c0abb10978e92dd1157e97ccdf40212022a1d9844b9f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.12-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8b74eebce7fef534078267321a335a8f103997ee5d7d76f4aa089e26f8206a93
MD5 cd730a7ff625314c1e922d6b3c08a5f6
BLAKE2b-256 d0aa3834b5306bb5f129090a7a7e3612debf1ee71dbc0be817e42a1fb0288d15

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.12-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0e6f5e6c3ce0a9255f53d8b4f809d8c461c429f5a4f479d29bfe2a38a50b0785
MD5 26a3ac0b83f0b8b819df5d7970facaab
BLAKE2b-256 31f96dd449eddb53408a00c80e0ef732b5e42a37fd4e0a50a32eb9e649afe23a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.12-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c3242c517cabc63176639c34240d78dd81c64f0f848f2a0849001c461eea515d
MD5 86726101e314151bffa6a30d3941eabc
BLAKE2b-256 add587e5491d4cbc59bda62798c4fafc679556ddd8635c30d8f10647fe2308da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.12-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7f106b3e2318fef4d2807cc703b241bd50b16108c8c52bda3dbafb7e73355b5a
MD5 3699637a682cab6ad42f6bfaf83f6777
BLAKE2b-256 15c3b5dad67afabdacb29351b3bcc320380d7a74c716988a8bd91d130e96f5f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.12-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6607e06d325cf49870a789bdb938609bec99e3a93589baf3c053a321c7c16045
MD5 fbfa3c3b481d8c034937f3517a291c93
BLAKE2b-256 94c8bad5d5c9069c457c2dff556a6b4c01ddf2a98959ec9cecaa38d318747805

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2021.2.12-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 79b68a6de4f758177b0e7b09320fe3af5e7ffb864ca7ce353def1deb819aea27
MD5 f1487f8264c5ab2945feea54febead67
BLAKE2b-256 53881cefff93e522dd0bbee85ad801d5514d9dd8eedd63a01d7d85e4ef44a773

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