Science Score: 64.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: zenodo.org -
✓Committers with academic emails
19 of 98 committers (19.4%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.7%) to scientific vocabulary
Keywords
amd
array
cuda
gpu
heterogeneous-parallel-programming
multidimensional-arrays
nvidia
opencl
opengl
parallel-algorithm
parallel-computing
performance
prefix-sum
pyopencl
python
reduction
scientific-computing
shared-memory
sorting
Keywords from Contributors
symbolic-computation
pycuda
code-generation
qt
computer-algebra
expression-tree
term-rewriting
wx
tk
gtk
Last synced: 4 months ago
·
JSON representation
·
Repository
OpenCL integration for Python, plus shiny features
Basic Info
- Host: GitHub
- Owner: inducer
- License: other
- Language: Python
- Default Branch: main
- Homepage: http://mathema.tician.de/software/pyopencl
- Size: 5.69 MB
Statistics
- Stars: 1,111
- Watchers: 49
- Forks: 248
- Open Issues: 78
- Releases: 31
Topics
amd
array
cuda
gpu
heterogeneous-parallel-programming
multidimensional-arrays
nvidia
opencl
opengl
parallel-algorithm
parallel-computing
performance
prefix-sum
pyopencl
python
reduction
scientific-computing
shared-memory
sorting
Created over 14 years ago
· Last pushed 4 months ago
Metadata Files
Readme
License
Citation
README.rst
PyOpenCL: Pythonic Access to OpenCL, with Arrays and Algorithms
===============================================================
.. |badge-gitlab-ci| image:: https://gitlab.tiker.net/inducer/pyopencl/badges/main/pipeline.svg
:alt: Gitlab Build Status
:target: https://gitlab.tiker.net/inducer/pyopencl/commits/main
.. |badge-github-ci| image:: https://github.com/inducer/pyopencl/actions/workflows/ci.yml/badge.svg
:alt: Github Build Status
:target: https://github.com/inducer/pyopencl/actions/workflows/ci.yml
.. |badge-pypi| image:: https://badge.fury.io/py/pyopencl.svg
:alt: Python Package Index Release Page
:target: https://pypi.org/project/pyopencl/
.. |badge-zenodo| image:: https://zenodo.org/badge/1575307.svg
:alt: Zenodo DOI for latest release
:target: https://zenodo.org/badge/latestdoi/1575307
|badge-gitlab-ci| |badge-github-ci| |badge-pypi| |badge-zenodo|
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.)
Links
-----
* `Documentation `__
(read how things work)
* `Python package index `__
(download releases, including binary wheels for Linux, macOS, Windows)
* `Conda Forge `__
(download binary packages for Linux, macOS, Windows)
* `Github `__
(get latest source code, file bugs)
Owner
- Name: Andreas Klöckner
- Login: inducer
- Kind: user
- Location: Champaign, IL
- Company: Scientific Computing, CS@UIUC
- Website: http://andreask.cs.illinois.edu/aboutme
- Repositories: 225
- Profile: https://github.com/inducer
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Kloeckner" given-names: "Andreas" orcid: "https://orcid.org/0000-0003-1228-519X" - family-names: "Yu" given-names: "Yichao" - family-names: "Wala" given-names: "Matt" - family-names: "Fernando" given-names: "Isuru" - family-names: "Bencun" given-names: "Marko" - family-names: "Kulkarni" given-names: "Kaushik" - family-names: "Diener" given-names: "Matthias" - family-names: "Gao" given-names: "Hao" - family-names: "Fikl" given-names: "Alex" - family-names: "Weiner" given-names: "Zach" - family-names: "Weigert" given-names: "Martin" - family-names: "Palmer" given-names: "Rebecca" - family-names: "Latham" given-names: "Shane" - family-names: "Magno" given-names: "Gonçalo" - family-names: "Fuller" given-names: "Henry" - family-names: "Mackenzie" given-names: "Jonathan" - family-names: "Niarchos" given-names: "Sotiris" - family-names: "Gill" given-names: "Shahzaib" - family-names: "Gohlke" given-names: "Christoph" - family-names: "Bhosale" given-names: "Aditya" - family-names: "Rothberg" given-names: "Alex" - family-names: "Ey" given-names: "Emanuel" - family-names: "Rapp" given-names: "Holger" - family-names: "van der Walt" given-names: "Stefan" # Removed pending resolution of https://github.com/zenodo/zenodo/issues/2343 # - alias: "gw0" - family-names: "Thalhammer" given-names: "Gregor" - family-names: "Kieffer" given-names: "Jerome" - family-names: "Poliarnyi" given-names: "Nikolai" - family-names: "Bollinger" given-names: "Drew" - family-names: "Nitz" given-names: "Alex" - family-names: "Bokota" given-names: "Grzegorz" orcid: 'https://orcid.org/0000-0002-5470-1676' title: "PyOpenCL" version: 2022.1.3 doi: 10.5281/zenodo.6533956 date-released: 2022-03-10 url: "https://github.com/inducer/pyopencl" license: MIT
GitHub Events
Total
- Create event: 20
- Issues event: 19
- Release event: 7
- Watch event: 59
- Delete event: 11
- Issue comment event: 70
- Push event: 78
- Pull request review event: 12
- Pull request review comment event: 17
- Pull request event: 55
- Fork event: 9
Last Year
- Create event: 20
- Issues event: 19
- Release event: 7
- Watch event: 59
- Delete event: 11
- Issue comment event: 70
- Push event: 78
- Pull request review event: 12
- Pull request review comment event: 17
- Pull request event: 55
- Fork event: 9
Committers
Last synced: 8 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Andreas Kloeckner | i****m@t****t | 2,071 |
| Yichao Yu | y****2@g****m | 227 |
| Alexandru Fikl | a****l@g****m | 97 |
| Matt Wala | w****1@i****u | 72 |
| Matthias Diener | m****r@i****u | 70 |
| Isuru Fernando | i****f@g****m | 64 |
| Marko Bencun | m****n@g****m | 52 |
| Kaushik Kulkarni | k****d@g****m | 23 |
| Hao Gao | g****5@g****m | 14 |
| zachjweiner | z****r@g****m | 12 |
| Martin Weigert | m****t@m****e | 10 |
| Rebecca N. Palmer | r****r@z****m | 10 |
| Shane-J-Latham | s****m@a****u | 9 |
| Goncalo | g****o@g****m | 9 |
| Sotiris Niarchos | s****s@g****m | 7 |
| Alex Rothberg | a****g@4****m | 6 |
| Shahzaib Gill | s****l@g****m | 6 |
| Jonathan Mackenzie | j****1@g****m | 6 |
| Christoph Gohlke | c****e@u****u | 6 |
| Nicolas Pinto | p****o@m****u | 5 |
| henry | h****r@g****m | 5 |
| adityapb | a****6@g****m | 5 |
| Alex Rothberg | a****g@g****m | 4 |
| Holger Rapp | H****p@g****t | 4 |
| Stefan van der Walt | s****n@s****a | 4 |
| Syam Gadde | g****e@b****u | 4 |
| gw0 [http://gw.tnode.com/] | g****4@t****m | 4 |
| Jerome Kieffer | k****r@l****r | 3 |
| Gregor Thalhammer | g****r@g****m | 3 |
| Emanuel Ey | e****y@g****m | 3 |
| and 68 more... | ||
Committer Domains (Top 20 + Academic)
illinois.edu: 3
esrf.fr: 2
literati.org: 1
mulderke.net: 1
fanplastic.org: 1
mitre.org: 1
haamster.(none): 1
mrt140.(none): 1
developmentseed.org: 1
ska.ac.za: 1
opanchuk.net: 1
syr.edu: 1
rtbiq.com: 1
casimir.bad: 1
lintaillefer.esrf.fr: 1
tnode.com: 1
biac.duke.edu: 1
sun.ac.za: 1
gmx.net: 1
mit.edu: 1
uci.edu: 1
anu.edu.au: 1
baylor.edu: 1
bnl.gov: 1
imperial.ac.uk: 1
smail.iitm.ac.in: 1
caam.rice.edu: 1
vt.edu: 1
hpcgeek.ccv.brown.edu: 1
cims.nyu.edu: 1
nist.gov: 1
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 70
- Total pull requests: 191
- Average time to close issues: 5 months
- Average time to close pull requests: 16 days
- Total issue authors: 46
- Total pull request authors: 13
- Average comments per issue: 3.17
- Average comments per pull request: 1.4
- Merged pull requests: 151
- Bot issues: 0
- Bot pull requests: 11
Past Year
- Issues: 17
- Pull requests: 50
- Average time to close issues: 8 days
- Average time to close pull requests: 3 days
- Issue authors: 12
- Pull request authors: 6
- Average comments per issue: 1.06
- Average comments per pull request: 0.7
- Merged pull requests: 30
- Bot issues: 0
- Bot pull requests: 6
Top Authors
Issue Authors
- inducer (14)
- anbe42 (4)
- matthiasdiener (3)
- jansol (2)
- gybo03 (2)
- noblockhit (2)
- majosm (2)
- kif (2)
- doetools (2)
- hvenev-insait (1)
- kalocsaibotond (1)
- geggo (1)
- ignatenkobrain (1)
- bjourne (1)
- konserw (1)
Pull Request Authors
- matthiasdiener (80)
- inducer (71)
- alexfikl (52)
- dependabot[bot] (16)
- isuruf (11)
- gybo03 (4)
- majosm (3)
- FattiMei (2)
- kaushikcfd (2)
- pierrepaleo (1)
- ptsk78 (1)
- tacaswell (1)
- wozeparrot (1)
Top Labels
Issue Labels
bug (40)
enhancement (8)
Pull Request Labels
dependencies (16)
github_actions (6)
Packages
- Total packages: 2
-
Total downloads:
- pypi 84,829 last-month
- Total docker downloads: 118
-
Total dependent packages: 76
(may contain duplicates) -
Total dependent repositories: 331
(may contain duplicates) - Total versions: 159
- Total maintainers: 1
pypi.org: pyopencl
Python wrapper for OpenCL
- Homepage: https://mathema.tician.de/software/pyopencl
- Documentation: https://documen.tician.de/pyopencl
- License: other
-
Latest release: 2025.2.6
published 5 months ago
Rankings
Dependent packages count: 0.3%
Dependent repos count: 0.8%
Downloads: 1.1%
Average: 1.2%
Docker downloads count: 2.5%
Maintainers (1)
Last synced:
4 months ago
conda-forge.org: pyopencl
PyOpenCL lets you access GPUs, multi-core CPUs, and other massively parallel compute devices from Python, through the OpenCL parallel compute interface.
- Homepage: https://pypi.python.org/pypi/pyopencl
- License: MIT
-
Latest release: 2022.2.4
published about 3 years ago
Rankings
Dependent packages count: 3.5%
Average: 10.8%
Forks count: 11.5%
Stargazers count: 13.1%
Dependent repos count: 14.8%
Last synced:
4 months ago
Dependencies
.github/workflows/autopush.yml
actions
- actions/checkout v3 composite
.github/workflows/ci.yml
actions
- actions/checkout v3 composite
- actions/setup-python v4 composite
.github/workflows/wheels.yml
actions
- actions/checkout v3 composite
- actions/download-artifact v3 composite
- actions/upload-artifact v2 composite
- actions/upload-artifact v3 composite
- pypa/cibuildwheel v2.11.2 composite
- pypa/gh-action-pypi-publish v1.5.1 composite
setup.py
pypi
- Mako >=0.3.6
- numpy *
- platformdirs >=2.2.0
- pytools >=2021.2.7