|AMD's Mac 3D Manager Discusses Graphics Cards & Drivers|
September 30, 2011 | IMG Staff
IMG: With the increase of the OS using the graphics card for accelerating interface tasks, has that changed the focus for mobile or desktop graphics designs?
CB: Ever since MacOS X 10.2 (Jaguar) was released in 2002, Apple has been a power user of the GPU to render their interfaces. Since we have worked with Apple for so long, AMD has been very aware of Apple's hardware acceleration needs, and we've absolutely added hardware support for features that Apple wants. So, yes, Apple exerts a pull on our hardware designs for both mobile and desktop GPUs.
IMG: Are some cards designed with more specific tasks in mind than others - such as gaming, 3D rendering, video playback, etc?
CB: The cards we have shipped on the Mac platform perform all of the functions mentioned. We try to make the AMD Mac drivers fast in games, compute, DCC/CAD apps and video playback, but we don't tune the driver separately for these different cases at the expense of any of the others. The hardware gets much of its power from massive parallelization: blocks of vertices are transformed in parallel, blocks of pixels are shaded in parallel. These optimizations apply equally well to gaming, 3D rendering and video. In addition the AMD chips have custom hardware for H.264 video playback, and compute shader support. The APIs that developers use to access our hardware (OpenGL, OpenCL, etc) are rich enough to expose all the power of the hardware to the users, so there's not much need for us to favor one use over another.
IMG: From a gaming perspective, is a previous generation card with more video RAM better than a later generation with less? For example: The Radeon 5750 1 GB vs the Radeon 6770 512 MB?
CB: Short answer: it totally depends on how much VRAM the game uses.
Long answer: let's slow time down… what is a game doing? Typically it will a) reserve some amount of VRAM to be its drawing surface (like its canvas), and then b) it will reserve a bunch more VRAM to hold texture art, and then c) it will draw a lot of triangles that copy the texture art onto the canvas. Ideally it does this more than 30 times a second, to create fluid animation. Now let's look at a couple of frames in super slo-mo… the game draws some number of triangles with one texture, like the brick texture on a wall, and then switches to another texture and draws some more triangles, like a horde of zombies. After it draws one frame, it displays it on the screen and then draws mostly the exact same objects from a slightly different position, say, as the hero is succumbing to the zombie assault. Ideally all the textures needed for those frames can fit in VRAM, because then they can be downloaded once (which is relatively slow, around 4 GB/sec moving from system memory to VRAM across the PCIe bus), and then copied onto triangles many times (which is ridiculously fast, around 153 GB/sec copying VRAM to VRAM). Let's say in a single frame a game uses 1MB more VRAM than is available on a card with 100MB, then 1% of its textures will have to be re-downloaded each frame, so 1% will be running at the slower PCIe speed, which will hardly hurt performance. On the other hand, say a game is using 100% more VRAM than is available, then it could be that as much as 50% of the textures have to be re-downloaded each frame, which could seriously impact playability.
If your game pages a little or not at all at 512 MB, then the next gen card will give you a big boost. On the other hand, if your game pages heavily at 512 MB, but runs fine in 1 GB of VRAM, stick with the older card that has more VRAM, because the penalty of paging could easily outweigh the faster rendering.
For more information about AMD and its products follow the link listed below.