SkillAgentSearch skills...

Oclpb

OpenCL Python Bindings

Install / Use

/learn @srossross/Oclpb
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Welcome to OpenCL for Python's documentation!

This is yet another set of Python bindings for OpenCL.

.. warning:: This project currently is in a beta release state.

Features: +++++++++++

  • Python 2 and Python 3 compatibility.

  • Supports OpenCL 1.1

  • Discoverable properties and methods: No more ctx.get_info(pyopencl.context_info.DEVICES) just do ctx.devices

  • Tight integration with ctypes <http://docs.python.org/library/ctypes.html>_::

    import opencl as cl from ctypes import c_float ctx = cl.Context() a = cl.empty(ctx, [2, 3], ctype=c_float)

  • Call kernels like a python function with defaults and keyword arguments::

    import opencl as cl from ctypes import c_float, c_int

    source = '__kernel void foo(__global float*a, int b, float c) ...' ...

    Create a program and context

    foo = program.foo foo.argnames = 'a', 'b', 'c' foo.argtypes = cl.global_memory(c_float, ndim=2), c_int, c_float

    Equivalent to def foo(a, b=1, c=2.0):

    foo.defaults = 1, 2.0

    event = foo(queue, a)

  • Memory objects support indexing and slicing::

    mem2 = memobj[:, 1, :-1]

Links: +++++++++++

  • Homepage <http://srossross.github.com/oclpb/>_

  • Issue Tracker <https://github.com/srossross/oclpb/issues/>_

  • Development documentation <http://srossross.github.com/oclpb/develop/>_

  • PyPi <http://pypi.python.org/pypi/opencl-for-python/>_

  • Github <https://github.com/srossross/oclpb/>_

  • OpenCL 1.1 spec <http://www.khronos.org/registry/cl/specs/opencl-1.0.29.pdf>_

  • Also please check out CLyther <http://srossross.github.com/Clyther>_

Related Skills

View on GitHub
GitHub Stars11
CategoryDevelopment
Updated5mo ago
Forks6

Languages

Python

Security Score

72/100

Audited on Oct 28, 2025

No findings