What's in a Graphics Card?

nvidia - Always the obvious choice?
As an engineer we are always looked too to increase performance and help solve technical issues. As PC's are more and more commonly used for almost all the roles bespoke hardware commonly in use for, we need to help fill in the holes in some of the areas we sometimes over look.

For me its been graphics cards, and recently I've had the time and need to look at them in closer detail.

Avid has long had a list of supported GFX cards for use with its software, but fundamentally these cards are massively under utilised by their software. Not until you start to look at the likes of 2D and 3D modelling / rendering do you start to see what graphics cards are capable of and how specific your choice needs to be to get the best performance from both your software and hardware platforms.

Cards can be carved out into 3 broad groups

Generic GFX Cards - The type of card that you have in your laptop of home PC that is used for light day to day needs and purely has to drive a display to show you your rendered desktop image. These can be dedicated cards, (PCIe perhaps) or perhaps something that is built into the computers motherboard as a dedicated chip or even incorporated into the CPU itself.

Gaming GFX Cards - These are high performance cards that are developed to render complex 3D images for real time game playing. Development of SLi (Scalable Link Interface) allows multiple GFX cards to be linked together in order to help shared the load of these calculations.

Professional GFX Cards - These are cards that are used for increased image rendering outside of the gaming realm and can be found in the likes of CAD, Animation and Mediacal systems that need to utilise computational power that is available on the high end cards.

As it stands the top category is easy to understand and the price and manufacturer of the GFX card usually has a bearing upon its power and use. Its safe to say that most of within our day to day life will use this type of card.

Not until you get in the next 2 categories do things become a little more confusing. But hopefully I can help shed some light.

When you start to look into the technical specifications of the Gaming cards against the Professional GPU cards you start to question the value of the higher end cards when you see some of the technical offerings and the comparative prices of the gaming cards. 
When you start to look into bench marks of GFX cards the high end cards often come out poorly against its cheaper gaming cards that are currently available. So you have to look at the type of tests are being made and you start to find that most test are done with with Benchmark software running gaming engines, which is targeted at the cards ability to create images via a DirectX engine which is more concerned with real time fill rates and shaders.

If however you are using something like 3D StudioMax or AfterEffects the Gaming cards will not give you the ability to access the more useful, powerful and complex geometry engines that allow for much more accurate calculations and final results when GPU calculations are important, or the ability to address CUDA technology when nvidia cards are used.

The most important element here is your research. Ensure that you look to your workstation in context of the software its running and then choose the appropriate card in the most informed way. Forums are a great place, obviously, but at the end of the day if your system is running a number of professional applications you may have to take a balanced approach and have a GFX card that may suite one application more than it does another.

Avid Note:
So why does Avid use high end cards? This is because Avid uses the OpenGL function of these cards when you use any DVE effects. You can see if your system is using the GFX card in the Video Display Settings Tab. If your GFX card is not available then it will say 'Software GL' which off loads the processing directly to your CPU, and making rendering slower and limiting the real-time playback capabilities when you have real-time FX in your timeline, this  is indicated as a real-time FX by a green dot.

OpenGL Hardware: You need to have your card selected in the menu to use it!

A few interesting articles that helped me out understanding what the GFXs card does in its different guises...

Thanks to Alastair Stokes to for some interesting observations and benchmark tools too.