【发布时间】:2015-06-16 02:20:32
【问题描述】:
如何使用任何 IDE 在 windows 或 linux 中为 android 平台配置 OpenCL 环境?我想在智能手机上使用 OpenCL 的 GPU。
【问题讨论】:
-
请参阅:*.com/questions/25087440/…,了解在三星设备上运行 openCL 的示例。
标签: android configuration opencl gpgpu
如何使用任何 IDE 在 windows 或 linux 中为 android 平台配置 OpenCL 环境?我想在智能手机上使用 OpenCL 的 GPU。
【问题讨论】:
标签: android configuration opencl gpgpu
Android 没有对 OpenCL 的官方支持,Google 公开反对它,甚至删除了非官方驱动程序http://www.anandtech.com/show/7191/android-43-update-for-nexus-10-and-4-removes-unofficial-opencl-drivers。即使您的硬件仍然有 OpenCL 驱动程序,您也无法在 Google Play 中分发该应用程序,因此它几乎没有用处。
对于 Android,您最好使用 Google 的 Renderscript(他们讨厌 OpenCL 的原因,他们希望使用他们的解决方案)http://developer.android.com/guide/topics/renderscript/compute.html
您可以使用 Renderscript 轻松编写某些算法。它基本上类似于 OpenCL,但它没有本地内存的概念,并且不支持访问线程 ID。但对于简单的图像处理或粒子模拟之类的事情,它是完美的。
如果您出于某种原因必须使用 OpenCL,并且您的目标硬件支持它,只需使用 adb pull 将 libOpenCL.so 从手机中取出,将其复制到 ndk lib 目录,并将 OpenCL 包含头文件放入包含路径你可以走了。
【讨论】:
基本上,要开发适用于 Android 的 OpenCL 程序/应用程序,您需要以下内容:
OpenCL 库文件。对于不同的芯片供应商,该库位于不同的路径下。详情请见here。
用 C/C++ 开发 OpenCL 程序。使用 ndk-build 编译到共享库。
【讨论】: