打开cl-python绑定

opencl-for-python的Python项目详细描述


这是opencl的另一组python绑定。

警告

此项目当前处于beta版本状态。

特点:

  • python 2和python 3的兼容性。

  • 支持OpenCl 1.1

  • 可发现的特性和方法:

    不再需要ctx.get_info(pyopencl.context_info.devices)只需ctx.devices即可

  • ctypes

    紧密集成
    import opencl as cl
    from ctypes import c_float
    ctx =  cl.Context()
    a = cl.empty(ctx, [2, 3], ctype=c_float)
    
  • 像使用默认值和关键字参数的python函数一样调用内核:

    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)
    
  • < L>内存对象支持索引和切片:

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

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java中ArrayList的超简单问题   Java 8在一段时间后过期   java如何创建具有用户定义维度的矩阵,并使用从上到下、从左到右的递增值填充它?   java从JDBC重启mysql   带有sqlite的java LiveData未更新UI   带有JDialog的java小程序在Mac OSX中未正确隐藏   java ActionListener无法从公共类引用数组?   java Apache Digester:NoSuchMethodException:没有这样的可访问方法   安卓中数据库中的java数据没有以正确的格式检索   java快速排序实现:使用random pivot时几乎排序   安卓 Java:高效的ArrayList过滤?   java如何在单独的文件中制作GUI程序   jasper报告如何从JSP或Java代码在JasperReport中传递参数值?