PyOpenCL只能并行化C ++代码吗?

时间:2013-09-09 21:51:54

标签: python opencl pyopencl

尝试学习PyOpenCL,但我发现的唯一例子是:

http://enja.org/2010/07/13/adventures-in-opencl-part-1-getting-started/

这似乎是用C引脚并行化的C ++脚本。我找不到任何明确的答案。有没有人曾经使用过PyOpenCL来加速python代码,还是只用于C ++?

2 个答案:

答案 0 :(得分:4)

您似乎正在寻找学习GPU编程的最快最有效的途径。

Udacity并行编程课程是一个从GPGPU开始的好地方。 https://www.udacity.com/course/cs344本课程将非常快速地教您基本的GPGPU概念。

在Udacity课程之后(或期间),我建议你阅读,运行和自定义PyOpenCL代码示例:https://github.com/inducer/pyopencl/tree/master/examples

答案 1 :(得分:1)

PyOpenCL允许您在GPU上运行算法。 GPU具有很多功率(“触发器”),成本非常低(相对于触发器;与例如CPU相比)。你用C编写算法.PyOpenCL会将你的C程序转换成GPU可以执行的形式,并在GPU上运行它们。最新版本的OpenCL还允许您使用C ++编写算法。没有特别的理由说明为什么GPU程序不能用Python表达,并通过某种编译过程从那里转换成实际的GPU代码。但是,这不是PyOpenCL所做的,据我所知,目前还没有这样的编译器存在(不过,你可以写一个:-))。