Skip to main content

Python wrapper for OpenCL

Project description

Gitlab Build Status Github Build Status Python Package Index Release Page Zenodo DOI for latest release

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:

  • g++/clang new enough to be compatible with nanobind (specifically, full support of C++17 is needed)

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

Uploaded Source

Built Distributions

pyopencl-2024.2.1-cp312-cp312-win_amd64.whl (758.2 kB view details)

Uploaded CPython 3.12 Windows x86-64

pyopencl-2024.2.1-cp312-cp312-musllinux_1_1_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

pyopencl-2024.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (960.3 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2.1-cp312-cp312-macosx_11_0_arm64.whl (707.5 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

pyopencl-2024.2.1-cp312-cp312-macosx_10_14_x86_64.whl (715.4 kB view details)

Uploaded CPython 3.12 macOS 10.14+ x86-64

pyopencl-2024.2.1-cp311-cp311-win_amd64.whl (758.2 kB view details)

Uploaded CPython 3.11 Windows x86-64

pyopencl-2024.2.1-cp311-cp311-musllinux_1_1_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

pyopencl-2024.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (960.6 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2.1-cp311-cp311-macosx_11_0_arm64.whl (707.0 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

pyopencl-2024.2.1-cp311-cp311-macosx_10_14_x86_64.whl (715.0 kB view details)

Uploaded CPython 3.11 macOS 10.14+ x86-64

pyopencl-2024.2.1-cp310-cp310-win_amd64.whl (758.2 kB view details)

Uploaded CPython 3.10 Windows x86-64

pyopencl-2024.2.1-cp310-cp310-musllinux_1_1_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

pyopencl-2024.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (960.8 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2.1-cp310-cp310-macosx_11_0_arm64.whl (707.3 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

pyopencl-2024.2.1-cp310-cp310-macosx_10_14_x86_64.whl (715.2 kB view details)

Uploaded CPython 3.10 macOS 10.14+ x86-64

pyopencl-2024.2.1-cp39-cp39-win_amd64.whl (758.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

pyopencl-2024.2.1-cp39-cp39-musllinux_1_1_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

pyopencl-2024.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (961.0 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2.1-cp39-cp39-macosx_11_0_arm64.whl (707.5 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

pyopencl-2024.2.1-cp39-cp39-macosx_10_14_x86_64.whl (715.4 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

pyopencl-2024.2.1-cp38-cp38-win_amd64.whl (758.7 kB view details)

Uploaded CPython 3.8 Windows x86-64

pyopencl-2024.2.1-cp38-cp38-musllinux_1_1_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

pyopencl-2024.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (960.9 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2.1-cp38-cp38-macosx_11_0_arm64.whl (707.1 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

pyopencl-2024.2.1-cp38-cp38-macosx_10_14_x86_64.whl (714.9 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: pyopencl-2024.2.1.tar.gz
  • Upload date:
  • Size: 465.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pyopencl-2024.2.1.tar.gz
Algorithm Hash digest
SHA256 54660b8904f4cf89acd9ee20575d4357d51809662b52a6cfa386aa2cfed6c7d2
MD5 326deb942ea3908acdbd152cc233dec6
BLAKE2b-256 8b3a44fd871e844bb50cae0de222000bb503baa542573a9b9df1b9c189afe841

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6095578299281773043f0ef80723a643c75faab53992dc21df3a66ca0d394dc3
MD5 1483078af34ffb83cf35059a6cdaab5c
BLAKE2b-256 8430e98450ea0d00b891ea15903886530677db6e1450a2f934b26f23c21569b4

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 f374860991907e14b617a241853c0c439762de9d4dcc66c4576f0d494cf5d7ff
MD5 0b083a38514d55c74c31ff07847b8404
BLAKE2b-256 ed7a16d37f8f6e38ce641536e2924ba62c7083c83585e3f27e32940d81b52085

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c8fb7cef06cf51ce9058d2f355feb62339217c61c06ac12ec89b17d324115bdf
MD5 981ba0c70b2ef0b834bd36b2e1186937
BLAKE2b-256 3eb221fcdb07ed00ea0f7e7f1eecb5b2eb8d61fcd70d0b8e9d19b889d379dd88

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fb88c8e857cadd2f05f4d545b858bed398c4f0004cd0f5ff3e4b3813e3bac27c
MD5 6ab73e33e6c2a71a359b8dbecbb6b045
BLAKE2b-256 7d4b0840c751645fe5cb202bdbfaf11668a81f6ce52c80a9eec9f71f84d10f0b

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp312-cp312-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp312-cp312-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 5d5888f9566061908aaa73ff2ac3705dc7fec5c570c2183a53f693781e5cb8ee
MD5 5a8516fdadd00c838b474e82acf46151
BLAKE2b-256 d18c5f4ece1892fbf95afe5aff8ea0319cebbf02a1b3f9cb888d28ecb78aa570

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 166f05413281a49ad2bd626876268c57deedf1f0948280a7c6d275ccc50a9572
MD5 eea3fbd4499dbc6b1e72c3fcf47f102f
BLAKE2b-256 403af30cf00947ef5a33d15a2cb2465a06fcfab68e1e8733c49806e31a2baaa5

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 ef50301ce0b5d1883e9bd3661722524296cee3c03f96ba577af5c40a298991d8
MD5 5202dd40e9cdb15e26d9cbf0a5f78e14
BLAKE2b-256 86abe126a1b7c6bce0cd755ee2375e924d9384594a9df368873e4c78597931de

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b9d99954b24f1a465e666915156d618dd516cd47dc74c41e9efe9a4cf776507c
MD5 0aae7dc0dfaf567a41a3950beb67d6e2
BLAKE2b-256 1ff968cc1d2476bd60b854d74ea4c4e774734f3c66882ffea122e02ebe90f771

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 487ef18336b55410ee108de16667f3ce98df67958aa82aa0d5a90462edf88d70
MD5 b204c8b9c8e529169035e330c6e483b6
BLAKE2b-256 5721eba1bc9e8cadc9731a2e49e112729aeefec3c833e08e81ade5df5d572c99

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp311-cp311-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 4b48aab6116c685778aff2478d644f095a6ea2a22fc878f1a415621af5408e07
MD5 498c3d63499fbf0d7f8f9fbb67a36b45
BLAKE2b-256 6c914fbd8968a8ea2ba3f3253cfde993b673db09d86def427568352b8e01d42e

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6212244204f23d34eea219fdeb9c25061b2e2ca14a0170aaf82e851360090dd0
MD5 fd0e78b7559804c4c9227d1ed87cc94d
BLAKE2b-256 19205982ef47515aff02209f947453bfb009002263ff000e2d227bd2f9024533

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 e7962effcab0ec761b977f6f0e10c3da356f137dda8d52f326e8c4e838ea9500
MD5 e553593034f6d9259046f65558739bfc
BLAKE2b-256 a1d8928924e966d96c899c36625ef18f7122b1662966a453fe631b115170118e

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b368babac1138d1395df2236b32360ccd248d31f4250e5fe500f51a7c78d18b8
MD5 b7e6fd3966b98d8ad55043c070ccb490
BLAKE2b-256 8974a6f6a2420e78643d9e888378d13bbbc876ce8da9f21588875b8dffa547a4

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b3c6b1391bca9b9ea6758eece2db73b2f4199ed07bf729b2782224485e174c77
MD5 3176eb1edbafbb9b22e73beef91e2fb5
BLAKE2b-256 d89216c4dee12d5f01959f59bc5c48cb3eac883ba5c1071a6ee2a3d2f3d52f87

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp310-cp310-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e8e0684c2c47f7f80ccce94e015a531ac9db2314299e1cb7d6bd5a4dcb3ac9cf
MD5 72e58330ecac125082f06dc4323b3bfd
BLAKE2b-256 267754ac138a2b926f04a058bb163275b3e26e720e37be70ba9de1bd104c83e7

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 37aaeb52678f67c0f181e2fa8607c1f423c91d03313c8921810798252865d261
MD5 eea0a97ebc14c85539ca9334892a0ba3
BLAKE2b-256 52feb22694ac25e4a377e8b6dfa7aa0e27e714b1e0893c436a52d26703bf8d24

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 2bd256e3c604177c66f6df6386fab0cc1cb6b8f84e6be2c964af3b4ba038885a
MD5 7a6ed9cc953204ebd4ae7163e7056cf0
BLAKE2b-256 177415ce7b9976ec9325c92983b839903216a2b8af073e7d84fa8ddbb2326662

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5aed6dead69b2b2e6541ea4c76f837937b551cad40124e67567153482bf5052a
MD5 4def2a8f968c17070e68398b6dc519ec
BLAKE2b-256 8dbc4c585aae913f91abbc2b5d29b74382a25827e39ef8c31ef778361b90ddfe

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4a3f59b06b3148ab0ef704ac4ccdb00e48e97916586464930aa15d8c804259fa
MD5 d3411e09b60b37629b08fa4b8e92f5be
BLAKE2b-256 800700e06edae186ea0801af2e3cbe224f50ba3df2212bffc71675d02cacaf4d

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 773e1c1179991ea194df250b0c298a570d94ce224d43c52455b46ab1360ee691
MD5 eda82fb1f7df4fdba86209771101f6f6
BLAKE2b-256 84baf0a782500c4c3d3243fd00d34cb7d745d2280b808b891cbf3fa7b1936733

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 590978b922135425072e9cef9b4bf795b316da6d2aa3888c2c1fe13358753aaf
MD5 7954a71a52f06ae4a180285b9652cfc2
BLAKE2b-256 341900088c68bb24ede2cedc040a1b10f6fddd248f4bf5cb25a714e2971b1480

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 586f74b8afc4f2045ad3e91c4327380f45d7e7fd761cc4fbc22e594078df9ccc
MD5 715d2c0ccf14685aab5272c400a02162
BLAKE2b-256 2ec1c32b1bff9a7ddae942df5f3abdb5c39dcbc590debc1fb46be59fc876d9fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d1805399a2e21aba8af3d8f0a0f84086abfd299a194dbbb548c98ea248d8885e
MD5 1f1cdd54a77670ecd9885a799aec0205
BLAKE2b-256 00716271f9f9091c59908aee6309796866d48f8cfec9f862e2e67d4f09196b6d

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7ba7cf3999724571878e36112fd100a45b0966cb371c43b7a72ee944f75a08c1
MD5 d873808c62132f7ca939cb70b0bdb892
BLAKE2b-256 91b99aa6b6e548e32f61f1b63e93e638b3fe285fcf798ba780a2aef3940b310b

See more details on using hashes here.

File details

Details for the file pyopencl-2024.2.1-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for pyopencl-2024.2.1-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 a3ca4318146c0f993ce72bb9903bb60f8bfaa1c1fd93bde3cbc64c9452d06768
MD5 f7798ab3eb10ce54d79b305ed1d3dcc2
BLAKE2b-256 053ba243830189257b8f947541e8e6bd12eed1732cc48bd7c51ae1466e37efaa

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