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

Uploaded Source

Built Distributions

pyopencl-2024.2-cp312-cp312-win_amd64.whl (756.8 kB view details)

Uploaded CPython 3.12 Windows x86-64

pyopencl-2024.2-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-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (958.8 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2-cp312-cp312-macosx_11_0_arm64.whl (706.0 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

pyopencl-2024.2-cp312-cp312-macosx_10_14_x86_64.whl (713.9 kB view details)

Uploaded CPython 3.12 macOS 10.14+ x86-64

pyopencl-2024.2-cp311-cp311-win_amd64.whl (756.7 kB view details)

Uploaded CPython 3.11 Windows x86-64

pyopencl-2024.2-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-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (959.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2-cp311-cp311-macosx_11_0_arm64.whl (705.5 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

pyopencl-2024.2-cp311-cp311-macosx_10_14_x86_64.whl (713.5 kB view details)

Uploaded CPython 3.11 macOS 10.14+ x86-64

pyopencl-2024.2-cp310-cp310-win_amd64.whl (756.8 kB view details)

Uploaded CPython 3.10 Windows x86-64

pyopencl-2024.2-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-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (959.3 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2-cp310-cp310-macosx_11_0_arm64.whl (705.8 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

pyopencl-2024.2-cp310-cp310-macosx_10_14_x86_64.whl (713.7 kB view details)

Uploaded CPython 3.10 macOS 10.14+ x86-64

pyopencl-2024.2-cp39-cp39-win_amd64.whl (757.2 kB view details)

Uploaded CPython 3.9 Windows x86-64

pyopencl-2024.2-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-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (959.5 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2-cp39-cp39-macosx_11_0_arm64.whl (706.0 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

pyopencl-2024.2-cp39-cp39-macosx_10_14_x86_64.whl (713.9 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

pyopencl-2024.2-cp38-cp38-win_amd64.whl (757.2 kB view details)

Uploaded CPython 3.8 Windows x86-64

pyopencl-2024.2-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-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (959.4 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyopencl-2024.2-cp38-cp38-macosx_11_0_arm64.whl (705.6 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

pyopencl-2024.2-cp38-cp38-macosx_10_14_x86_64.whl (713.4 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: pyopencl-2024.2.tar.gz
  • Upload date:
  • Size: 464.0 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.tar.gz
Algorithm Hash digest
SHA256 3d63a701983aa60a6c2195d7384653290f809775ac384aac34906ae80cb7002e
MD5 a33ac91419e3d680ca613d67b6842774
BLAKE2b-256 5d963003c124c9ed631079f0e262a6567bb7d55e124537711983739c0ef5cf16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6c8ba91f5e186c94aa7fe9a400e853175bcc2d94116d004b03c7bd9e1396b198
MD5 4ad405802c1e83fc2e2cb499ab3fe3e8
BLAKE2b-256 620e5212fbdb68525ef3e3fe634fc973ccf892922238dfcd9d6b0916dcbe5662

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 79078e4493cb9dece3ddf808b73fb992416f5fa264815f1f5c1766e89656b239
MD5 d1f46cbd86a1815ce15c1b8c3de295f8
BLAKE2b-256 adbee0a3cef815fc642d757ea2898707e532415d79420bb33c483ceeee48b27d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a2bf086479413bced8e66f4b28ae19e461d6deaa124927fc70ea94db5073af39
MD5 48ddf18a9f2e15d5d07253d60a0470ca
BLAKE2b-256 95986b65fe3cfe51be2fcd5faf0d4bb07b832da31b6787dd8813cdacf416b78e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7a2cf58015ef1d2de2670c54fb1afaa3085a8a84ee6e7fdeba60508b8aafe3a6
MD5 52f41c7f33e54a73a8c85811bce82231
BLAKE2b-256 99d28a7637d32712d3231d3b2fdc29fbf85e13bed4e2ba223bec7f81d7513299

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp312-cp312-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 35d497fc6cc6c59cd9aa5101de3535fb08b3173434917381af1646d8eff17ecd
MD5 a25c31a1a1aa0d3a1b8473a89e4f2a6e
BLAKE2b-256 f6ae082284825f051fe9db4c0840eef1d8965584f1c4159bfc93bdbc00bdef32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bff79fd933b1daeabcb483839f3ec4b6fef9d4b1ac966f8c508a9395daedb94e
MD5 b4c567f10092082df7073ad67b2eef68
BLAKE2b-256 9bd0e85fd3971f2004017096034825aa3af1045c6fef26397c6be1d74d10f35f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0bd84aec254afd0e14f219501ee781b02727a9b2965dfd167f08cbccecd29a22
MD5 bf181cef6884d7098fed82650746c132
BLAKE2b-256 d2b5642023782242060715a2cf207da778e2aa044aef9f7bb083fcabe4c8814a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ba09b673d0c67310fcddcebea05da853ba019edb244c95ae97e2e34ad36015ac
MD5 d9d97bed47c6fabf30365a373c5719b2
BLAKE2b-256 3e7cd94a2c10c6c0f94df6df8b1de5b0980d3ea4b934a061c817ff7c85ef75ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8a03e1f5e2cff8e1ac7d8f53f308dc29f4f6462dc6845eb9288bf891cfaf580c
MD5 f80c1f58d6941cc2255ac0943bc89b05
BLAKE2b-256 b4701e04d3ef143113d57bad5615467a0d6a8a2131dc18efac7f28babda2459b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 7ab39fa17659a65fa035a986a905d1e8b976f6100378bb3cf4b17842ca90ea2e
MD5 772ddbdf305b74a7293e92e2ffc331ef
BLAKE2b-256 782011f0d9777069f47c839c2de78cadb71ab26ff013d643f452e1d09d607e32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3199a12fbe8776c748f0029274ad5e209a14f2faadb1568ef351c026536a5f8f
MD5 b5a71870af9193345f5cac68778d4af3
BLAKE2b-256 8606c5b95a4c789b0016e4f0350f4b4f5921773af70e1c556138ddd95e4ae72e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 5796929ad467f4b041927e67a47739bd005e4c03cb2f6f8dbde6e8e1c4dde3c4
MD5 a4aab7c605c7ce17fb8503986c2a8230
BLAKE2b-256 a52a6dd20a0b1de59ba3dc7578aed550387770e4808d2876b4aec1cbde090a05

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bd12960f18ba6b29f4077d1a54f3e447279c75b9a5e6bdcc364c314064147883
MD5 1ddc07090f04550eb9da4f95a049ea0e
BLAKE2b-256 1f83074596bb8e90a233b70cf7a3eff29ca3bd4a0acc0feab18e5969388c679d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ea87e8d4112001c18d5db9c559f31f5f16c0a7f12abe0aea2d04475859d92022
MD5 b6cc75879bf61114ac8ce06c0d55304e
BLAKE2b-256 692c7a703e0c0ba51778517c9956c267a1cb0742ff8048c797fd89b6656e9e1b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 7da19867361775ef7d1c21d314e46907ed68a983fb31713ef65af59ea2a17cb7
MD5 947d317f774dbac6b9da3fbc2b80925f
BLAKE2b-256 5cc515666e17fa63de4f5553455aa8718c185ced3bcb929c88b6e6232bdf88d9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyopencl-2024.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 757.2 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pyopencl-2024.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 787032210464f0d6682cbf90b263b95fe77cb84f32ca19c78bcde19c6f76a861
MD5 ae4d7f8c8125a32b3cad7bf94b3e0eaa
BLAKE2b-256 171aa0f0b5717502f23a9a5675429172a04a566b75a4930438514e9ea82ecefd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 5f4246690353ffe6530daf9536bb6043357c69a3959c95454f2d1f1987d0cdb6
MD5 88598890dbecae8e0dde5453d73daa0c
BLAKE2b-256 893aaa01967be21d667db94d97303d6b93ea6732bc38c204b4362f475d964445

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1798af50ef5f45a8254fdb31df8c18a19d240448872e1893ae82ce1ae3aae384
MD5 2c00a0be43e70b5fa355c7dc6723ed80
BLAKE2b-256 7ee788f180bc15e27a43b1a4979da8685a6b982c9b34f7a64854fb19602c0d72

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 796519c92b315dc821139ab38e939e1f304f27307ee2808f0f30d4e1451e0dd9
MD5 f81be4f003c9474b326f58e289dbc82b
BLAKE2b-256 a74d3cf5760ca054e87b7526fc33166d25613043da67d7c5943885a3c20c2894

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 ee3e008da1f518d0a9a722822ed76f1765e19e816b4a5e74d6760d8b05c90e1d
MD5 c91272b9c449de5656a5702ddd6052c2
BLAKE2b-256 f02cebf0a4350b8dce2cfc67358244548769bdcd9e8667c55bc3024c2c529526

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyopencl-2024.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 757.2 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pyopencl-2024.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 f5499b44b60eb1577ab72ff91968c99122b7492909e6f97e6b9138e873f469ae
MD5 4ee74bd944f30f19d94866954f3d7959
BLAKE2b-256 58c47cfa2325734218fdd08859ea208c07f5511755366c3d8bce126882d8e4b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 ca0f18f0f3d87b9dd12efa377a51346a6ddd4f931b832feafa7c95f913a3a0a7
MD5 9e237fcd3a8fcc67760e3ce21d0dcc45
BLAKE2b-256 4e8bf4952b789d85df3e00ae5b03f5bf3b0452e392b98220a8f106b9981d8e76

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9a6de74429016c19c27920339c7a4c442fb09256fa047fe44032aad0bdcdbd91
MD5 97cad517a649b2c62265c310a9c49063
BLAKE2b-256 e603e0b22ed89a04f0149417995719365b3dbb95981e23a16f7feca15b9f98e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8ab948a5cabc456aeab58cacb1f2693204dddc48369ded9ae3ce0fba7a2fd1b5
MD5 01745b70b4506718474f3d4bb0fcb40f
BLAKE2b-256 74a10d3150a14847ab833975007bc91805ed9b6a14649a6f2dac40565d1a3b89

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyopencl-2024.2-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 c3c03c02b2f39cc1345e456c3378a17afdd7d18c2f016bcdf6cb39620d30ccd4
MD5 a5b918053a70c63aade725665c46d4e5
BLAKE2b-256 54b072e85ce3a9868891d1eb7b31c690daeb4d7b2a2eda162d2bdc756726fe30

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