Мне нужно нарисовать сотни полупрозрачных кругов как часть моего контура OpenCL.Для простого рендеринга: OpenCL быстрее, чем OpenGL?
В настоящее время я использую OpenGL (с альфа-смесью), синхронизированный (для переносимости) с использованием clFinish и glFinish с моей очереди OpenCL.
Быстро ли выполнить эту задачу рендеринга в OpenCL? (если остальная часть конвейера уже находится в OpenCL и может работать на CPU, если нет совместимого с OpenCL GPU).
Легко заменить растеризатор простой тестовой функцией в случае круга. Для функции blend требуется одно чтение из текстуры назначения для каждого фрагмента. Таким образом, наивная реализация OpenCL кажется теоретически более быстрой. Но, возможно, OpenGL может отображать неперекрывающиеся треугольники параллельно (это было бы сложнее реализовать в OpenCL)?
«* предполагая, что остальная часть конвейера уже находится в OpenCL *« О том, о каком трубопроводе вы говорите? –
Конвейер обработки в моем приложении. Я вычисляю некоторое изображение с помощью OpenCL, затем нужно отображать эти круги, а затем снова обрабатывать с помощью OpenCL. –
Если вы можете вызвать растеризацию или расистентность просто. Я не знаю многих, кто утверждал бы, что реализация любой из этих вещей представляет собой простой рендеринг с использованием специализированного API, который делает это для вас как альтернатива. –