Opengl Es如何用于gpgpu实现
我想使用 Opengl Es 进行图像处理代码的 gpgpu 实现。我想知道我可以使用 Opengl Es 来实现此目的吗?如果可以的话,哪个版本的 Opengl Es 将更适合此目的(Opengl Es 1.1 或 2.0)。
I want to use Opengl Es for gpgpu implementation of an image processing code. I want to know can I use Opengl Es for this purpose. If I can than which version of Opengl Es will be more appropriate for this purpose (Opengl Es 1.1 or 2.0).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
OpenGL ES 是一种用于嵌入式系统的图形技术,因此不如它的老大哥那么强大。 OpenGL ES 的设计并未考虑进行 gpgpu 处理,但可以实现一些算法,尤其是那些处理图像并需要逐像素处理的算法。
然而,对于真正的 GPGPU 编程,您应该考虑 OpenCL、Nvidia CUDA 或 AMD Stream 技术。有关更多具体信息,请查看 GPGPU 网站 http://gpgpu.org/developer
OpenGL ES is a graphics technology for embedded systems, and therefor not quite as powerful as it's bigger brother. OpenGL ES was not designed with doing gpgpu processing in mind, but some algorithms, especially those that work on images and require per-pixel processing can be implemented.
However for real GPGPU programming you should consider OpenCL, Nvidia CUDA or AMD Stream techniques. For more specific information check the GPGPU website http://gpgpu.org/developer
OpenGL ES 2.0 比 ES 1.1 对于图像处理任务更有用。尽管 OES_framebuffer_object 不是 ES 2.0 核心的一部分,但它是一个广泛支持的扩展。此扩展使您能够渲染纹理。
不过,请注意:许多 OpenGL ES 设备均由 PowerVR 图形硬件提供支持。虽然它是一款出色的低功耗、相对高性能的芯片,但基于图块的渲染架构的图像处理速度并不快。
您具体需要做什么取决于您打算实现的图像处理算法。
OpenGL ES 2.0 is much more likely to be useful for image processing tasks than ES 1.1. Though OES_framebuffer_object is not part of ES 2.0 core, it is a widely supported extension. This extension gives you the ability to render to textures.
However, be warned: many OpenGL ES devices are powered by PowerVR graphics hardware. While it is a great low-power, relatively high-performance chip, the tile-based rendering architecture is not as fast for image processing.
Exactly what you will need to do will depend on the image processing algorithm you intend to implement.