Sunday, October 24, 2010

GPU Programming

Tip - GPU Programming enables us to do high performance graphics applications without using much of the critical CPU resources. Using GPU applications we can reduce the CPU utilisation to a large extend and also can achieve higher frame rates.

Details - A GPU (Graphics Processing Unit) is a processor attached to a graphics card dedicated to calculating floating point operations. A graphics accelerator incorporates custom microchips which contain special mathematical operations commonly used in graphics rendering.
A GPU implements a number of graphics primitive operations in a way that makes running them much faster than drawing directly to the screen with the host CPU.

GPU programming mainly focus on parallel processing while traditional CPU programming is based on the time scheduling of CPU. Parallel algorithms running on GPUs can often achieve up to 100x speedup over similar CPU algorithms, with many existing applications for physics simulations, signal processing, financial modeling, neural networks, and countless other fields. Now days GPU Programming is widely used to achieve parallel processing of non graphics data also. The main GPU based programming techniques that we use are Microsoft DirectX and OpenGL.

References -
http://en.wikipedia.org/wiki/GPGPU
http://www.vis.uni-stuttgart.de/vis03_tutorial/weiskopf_intro_hw.pdf

Posted by - Xavier K. Joseph

No comments:

Post a Comment