Я хочу использовать Opengl Es для реализации gpgpu кода обработки изображений. Я хочу знать, могу ли я использовать Opengl Es для этой цели. Если я могу, то какая версия Opengl Es будет более подходящей для этой цели (Opengl Es 1.1 или 2.0).
Как можно использовать Opengl Es для реализации gpgpu
Ответы (2)
OpenGL ES — это графическая технология для встраиваемых систем, поэтому она не такая мощная, как ее старший брат. OpenGL ES не был разработан с учетом обработки gpgpu, но некоторые алгоритмы, особенно те, которые работают с изображениями и требуют попиксельной обработки, могут быть реализованы.
Однако для реального программирования GPGPU вам следует рассмотреть методы OpenCL, Nvidia CUDA или AMD Stream. Для получения более подробной информации посетите веб-сайт GPGPU http://gpgpu.org/developer.
OpenGL ES 2.0 гораздо более полезен для задач обработки изображений, чем ES 1.1. Хотя OES_framebuffer_object не является частью ядра ES 2.0, это широко поддерживаемое расширение. Это расширение дает вам возможность визуализировать текстуры.
Однако имейте в виду: многие устройства OpenGL ES работают на графическом оборудовании PowerVR. Несмотря на то, что это отличный маломощный и относительно высокопроизводительный чип, архитектура рендеринга на основе тайлов не так быстра для обработки изображений.
Что именно вам нужно будет сделать, будет зависеть от алгоритма обработки изображений, который вы собираетесь реализовать.