随着向支持多媒体的移动设备的推动,这似乎是提高这些平台性能的合理方式,同时保持通用软件的功效。我一直对IPad硬件感兴趣,因为它是用户界面和数据显示/输入使用的开发平台。但我很好奇设备本身能够处理多少处理能力。 OpenCL将使其成为一个JUICY硬件平台,即使许可证看起来有点臭。
答案 0 :(得分:21)
OpenCL尚未成为iOS的一部分。
然而,较新的iPhone,iPod touch和iPad都有支持OpenGL ES 2.0的GPU。 2.0允许您创建自己的可编程着色器以在GPU上运行,这将允许您进行高性能并行计算。虽然不如OpenCL那么优雅,但您可以解决许多相同的问题。
此外,iOS 4.0带来了Accelerate framework,使您可以访问许多常见的基于矢量的操作,以便在CPU上进行高性能计算。有关详细信息,请参阅WWDC 2010 videos中的会话202 - iPhone OS的加速框架。
答案 1 :(得分:8)
小心!此问题被谷歌评为第二名。然而,这里的大多数答案(包括我的)已经过时了。对iOS上的OpenCL感兴趣的人应该访问更多这样的更新条目 - https://stackoverflow.com/a/18847804/443016。
iPad2的GPU,PowerVR SGX543能够支持OpenCL。
让我们等一下,看看哪个iOS版本会为我们带来OpenCL API。:)
答案 2 :(得分:6)
从nacho4d开始:
在iOS5s私有框架目录中确实有一个OpenCL.framework,所以我认为iOS6是一个值得关注的OpenCL。
实际上,我已经在iPad 1的OpenGL相关崩溃日志中看到了它,虽然这可能只是CPU(实现图形堆栈的一部分,就像在OSX上一样)。
答案 3 :(得分:3)
您可以使用私有OpenCL框架在iOS上编译和运行OpenCL代码,但您可能无法将项目导入App Store(Apple不希望您使用私有框架)。
以下是如何做到这一点: https://github.com/linusyang/opencl-test-ios
答案 4 :(得分:1)
OpenCL?还没。 在iOS中猜测下一个公共框架的好方法是查看私有框架目录。 如果你看到你在寻找什么,那么就有机会。 如果没有,那么等待下一个版本再次查看私有内容。 我猜CoreImage是第一个因为OpenCL太低了;) 无论如何,这只是猜测