GPGPU stands for General-Purpose computation on GPUs. With the increasing programmability of commodity graphics processing units (GPUs), these chips are capable of performing more than the specific graphics computations for which they were designed.
Back in the eary 1990s, we developed a variety of techniques that allow arbitrary MIMD programs to execute on SIMD hardware with reasonable efficiency.
Many of the tricks we've devised or collected either require assembly language coding or are not entirely portable when coded in HLLs like C, but these techniques are still valuable because they can yield significant performance improvements over the more obvious ways of doing things.
I'm Federico Feroldi, a visionary developer and technology enthustiast. This blog will follow my latest projects and interests about my life and my job. I hope you'll enjoy and contribute with your comments.