Tutorial 42: Slab: Data Processing on the GPU We saw in the
previous tutorial how custom shaders can be executed on the
Graphics Processing Unit (GPU) to apply additional shading
models to 3D objects. While the vertex processor and fragment
processor are inherently designed to render 3D geometry, with a
little creativity we can get these powerful execution units to
operate on arbitrary matrix data sets to do things like image
processing and other tasks. You might ask, "If we can already
process arbitrary matrix data sets on the CPU with Jitter Matrix
Operators (MOPs), why would we do something silly like use the
graphics card to do this job?" The answer is speed. Hardware
Requirement: To fully experience this tutorial, you will need a
graphics card which supports programmable shaders—e.g. ATI
Radeon 9200, NVIDIA GeForce 5000 series or later graphics cards.
It is also recommended that you update your OpenGL driver with
the latest available for your graphics card. On Macintosh, this
is provided with the latest