我最近发现了 GP-GPU(通用图形处理单元)的强大功能,并希望利用它在单台机器上执行“繁重的”科学和数学计算(否则需要大型 CPU 集群)。
我知道有几个接口可以在 GPU 上运行,其中最突出的是 CUDA 和 OpenCL。后者相对于 CUDA 具有优势,可以在大多数显卡(NVIDIA、AMD、英特尔)上运行,而不是仅在 NVIDA 卡上运行。就我而言,我有一个普通的 Intel 4000 GPU,它似乎与 OpenCL 很好地配合。
现在,我需要学习如何使用 PyOpenCL 来进一步了解它!那么问题来了:
如何开始使用 PyOpenCL?有什么先决条件?我真的需要在 Python 和/或 OpenCL 方面有经验吗?
我的背景是 fortran,事实上,我需要将冗长的 fortran 代码翻译和并行化为主要处理 PDE 和对角化矩阵的 python(或 pyopencl)。
我已经阅读了两个相关网站http://enja.org/2011/02/22/adventures-in-pyopencl-part-1-getting-started-with-python/和http://documen.tician.de/ pyopencl/但它们对新手(即傻瓜)并没有真正的帮助。
我只是不知道从什么开始。我并不渴望成为该领域的专家,只是想了解如何在 pyopencl 上并行化简单的数学和线性代数。
非常欢迎任何建议和帮助!