While the GLSL syntax is very similar to C, GLSL is sharply limited. A few common shortcomings are that it is difficult to setup and configure, there is no ability to trace or log results from a running shader, and the extent of any loop must be a compile time constant.
A first glance the hardware specification might be unimpressive. A processor clock speed of 915Mhz for an NVIDIA 690 graphics processor vs 3.4GHz for an Intel i7-3770, and a memory clock speed of 1052Mhz for the 690 vs 1866 MHz for workstation memory. So, what's the big deal about graphics cards? Why are they able to render a full screen at 60 FPS on most games, and why is there attention on harnesing them for high end computing tasks?
Simple. That NVIDIA 690 card, it has 3072 shader units! Parallelism is incredibly important in graphics programming. This arises because rendering a screen falls naturally into a parallel programming model because the computations for one pixel do not depend on the computations for other pixels this allows a lot of them to be done in parallel at once.
While the GLSL syntax is very similar to C, GLSL is sharply limited. A few common shortcomings are that it is difficult to setup and configure, there is no ability to trace or log results from a running shader, and the extent of any loop must be a compile time constant.
A first glance the hardware specification might be unimpressive. A processor clock speed of 915Mhz for an NVIDIA 690 graphics processor vs 3.4GHz for an Intel i7-3770, and a memory clock speed of 1052Mhz for the 690 vs 1866 MHz for workstation memory. So, what's the big deal about graphics cards? Why are they able to render a full screen at 60 FPS on most games, and why is there attention on harnesing them for high end computing tasks?
Simple. That NVIDIA 690 card, it has 3072 shader units! Parallelism is incredibly important in graphics programming. This arises because rendering a screen falls naturally into a parallel programming model because the computations for one pixel do not depend on the computations for other pixels this allows a lot of them to be done in parallel at once.