filmov
tv
Image processing pipeline: Resize, Gaussian blur, Rotate and Blend

Показать описание
Generic opencl pipeline builder is used to have an example image processing pipeline with an open source gpgpu API:
its tutorial:
running all kernels and device-to-host(and host-to-device) copies concurrently helps reduce GPU timeline bubbles(idle time spans) and makes it more efficient.
R7-240 GPU at 950 MHz(320 cores) can compute these stages:
3k * 3k to 1k * 1k resize (rgba)
blur(7x7 stencil size) on 1k*1k image (rgba)
rotate 1k*1k (rgba)
blend 1k*1k with another image (rgba)
in
Serial pipeline: 14ms
Parallel pipeline: 10ms
so a GTX Titan XP would accomplish these tasks under 1 ms or it would produce 1000 images per second.
OpenCL kernel codes of this example can be found here:
its tutorial:
running all kernels and device-to-host(and host-to-device) copies concurrently helps reduce GPU timeline bubbles(idle time spans) and makes it more efficient.
R7-240 GPU at 950 MHz(320 cores) can compute these stages:
3k * 3k to 1k * 1k resize (rgba)
blur(7x7 stencil size) on 1k*1k image (rgba)
rotate 1k*1k (rgba)
blend 1k*1k with another image (rgba)
in
Serial pipeline: 14ms
Parallel pipeline: 10ms
so a GTX Titan XP would accomplish these tasks under 1 ms or it would produce 1000 images per second.
OpenCL kernel codes of this example can be found here: