Performance Testing: Does Video Memory Size Matter?

This section is the most difficult one to write, the problem is that there aren’t that many good performance tests for a high end GPU under OS X. It also happens to be a big part of the reason Apple can get away with shipping integrated graphics in the majority of its machines and a low end add in card in its Mac Pro. Honestly, one of the biggest uses for a new graphics card under OS X is having additional video memory.

The contents of each window and the windows themselves are drawn by the GPU and stored in video memory. Previous versions of OS X either drew windows in system memory and then composited all of them in video memory, or did everything in system memory and just outputted the final scene to the video card. Ever since OS X 10.4, the entire drawing and display process happens on the GPU and in video memory. Ars Technica’s John Siracusa has an excellent explanation of the whole process.

Each window gets treated as a 2D OpenGL surface and all of the character and image rendering, blending and display happens on the GPU. The GPU is much faster at all of this than the CPU so it made sense. The result is much lower CPU and system memory usage. What it also means is that the amount of video memory you have matters.

If you run out of video memory, the GPU has to swap data in and out of system RAM. The trip to system memory is much higher latency than just grabbing windows from video memory, and thus we see performance suffer. Faster memory busses and PCIe 2.0 both help minimize the impact, but it’s there nonetheless.

The issue is never about how many windows you can have open, but how smoothly effects like Dashboard and Exposé run. Those depend on having enough video memory to store/manipulate all open windows.

I ran some tests to figure out exactly how much video memory was enough for a single display. I started with a blank desktop and measured available video memory. On a 512MB card, at 2560 x 1600, you end up with 488MB of free video memory in OS X 10.5.7.

Depending on the contents of the windows you open, their memory requirements will differ. I found that a full height Safari 4 window showing the AnandTech home page was pretty stressful from a memory footprint standpoint. A single Safari 4 window required 7MB of video memory at 2560 x 1600. Finder windows are much cheaper, some application windows are much more expensive (more on this later).

With a single window requiring 7MB, 10 requires about 70MB. Now things don’t always scale linearly and there’s additional overhead for dealing with more windows. At 10 windows that overhead appears to be around 1MB. While a single Safari 4 window needs 7MB at 2560 x 1600, ten will need around 71MB; twenty windows will need 144MB.

Lower resolutions require less video memory. At 1680 x 1050 the cost per 10 windows drops from 71MB to 44MB.

I extrapolated the data out to 130 Safari 4 windows and presented the video memory requirements, dependent on resolution in the graph below:

If you have a 30” monitor running at its native resolution (2560 x 1600), a 512MB video card will get you just under 70 windows.

Note that not all applications play nicely. Take Photoshop CS4 for example. One of its major features is the ability to enable OpenGL acceleration within the application. With each image being OpenGL accelerated you get benefits like being able to zoom and rotate smoothly, the downside is that each image you open in Photoshop now eats up even more video memory.

Under OS X each 12MP image from my digital camera that I open in Photoshop eats up around 56MB of video memory (at 2560 x 1600)! To make matters worse, OS X won’t reclaim all of the memory even if you close all of the images in Photoshop. You need to exit Photoshop to get all of your video memory back.

While it would take 70 normal windows to max out the 512MB of video memory on a GeForce GT 120 at 2560 x 1600, it would take less than nine 12MP images open in Photoshop to do the same. And once again, you don’t get that memory back when you close your images - only after you exit Photoshop. Most other windows in OS X will give you your GPU memory back as soon as you close the window.

If you find yourself doing a lot of work in Photoshop, you’ll want to either limit the number of images you have open at once or disable OpenGL acceleration. And by all means, quit the app once you’re done editing. Of course you could always move to a graphics card with more memory...

The 100$ premium can be attributed to one simple fact I think - lower expected volume of shipping so higher premium per SKU.

And all that wolf in sheep's clothing talk? Anybody heard of Windows 7? Hundred plus dollars for a freaking SPITnSHINE? THAT is overpricing! The only reason MS is charging so much is that - again - it makes it want to look like a different OS and not just an upgraded and FINALLY polished Vista. Maybe 40$ is all it was actually worth, if not less.

And why don't people ever get that Apple charges for the OS + the hardware. My theory for Snow Leopard upgrade being priced at a ridiculous 30$ (ESPECIALLY considering Snow Leopard comes with some ACTUAL upgrades, and not just tweaks) is just that - Apple has already recovered some of the cost of the OS from the hardware sales, plus this simply is the best possible way of extending the service promised to their high-paying customers. There is a loyalty there that MS simply cannot hope to emulate any time in the short run, and that's not a fanboy talking. The ONE time they did extend some kind of good support was when they shelled out 1 billion to extend the warranty of 360's, and even THAT was done because they really didn't have a choice - people would have simply walked away otherwise.

Windows is a money-minting device. Apple actually cares about what they build and put thought into it. If I have to pay a gazillion dollars for that, it is fine. I don't mind paying a premium to reap the results of somebody else's hard work. :)

I'm not saying that because I'm an Apple fanboy or something. I'm infact a long-time Windows customer who is just FED up with all the bull I have to put up with. 100+ $ for an OS UPGRADE?! Insane amounts of money for an Office suite that I cannot even make a half-decent presentation (for people with taste) with? I have had to design a custom background, spend several costly minutes configuring the fonts and their positioning because the defaults are just SO arcane and butt-ugly. And so are the fonts they use everywhere. Ugh. UI changes that do not even make any sense (can you seriously read those transparent top-bars in Vista? SERIOUSLY? All that transparency only hurts my eyes) 30% red-ringing hardware (I know, old news). Nah. I have had enough of Microsoft. Thank you. (please don't) Come again. Reply

I use both Vista and Leopard, though I FAR prefer Leopard. I am a Graphic Designer and hence use OS X at work. Each OS has its ups and downs, but what really irks me about Windows is its lack of snappiness. Blame it on Vista if you want, but With OS X programs launch faster, basically everything I need to be productive in doing, happens faster in OS X. Now Clearly GPU performance has yet to catch up and I blame this on Apple as well as the GPU manufacturers.

Also in regards to the FUD about OMG my i7 machine can roxxors yourz Mac Pro... They are machines with fundamentally different purposes. Yes you could most likely do the same work in the same amout of time on an i7 box, but Workstations are meant for very specific purposes in PRODUCTION environments. Yes there are people who would buy a MacPro to play games. They are idiots. I could build a Core2Quad box for 1/2 the cost of a MacPro and it would run games just as fast. But can you build an 8 core desktop machine? no. You have to PAY LAVISHLY to get a Xeon dual socket workstation for that. Yes the majority of applications wont run any faster from 4 cores to 8 cores (all else being equal) but for that tasks that do, machines like the MacPro are essential for maintaining productivity.

Having said that, the majority of the people posting on here would be much better served sticking to a consumer level desktop machine. Its really not worth the extra cost for them to get a dual socket machine. Hell even 4 cores are just finally being able to be utilized well... Reply

"Windows is a money-minting device. Apple actually cares about what they build and put thought into it. If I have to pay a gazillion
dollars for that, it is fine. I don't mind paying a premium to reap the results of somebody else's hard work. :) "

You cant compare apple with windows, its just doesnt make sense. Apple developes their own software assembles their own boxes and sells you the finished product. They use high quality components and they charge a little extra for them just because they offer a finished product.Does it make sense? it depends on the user i'd say. Microsoft on the other hand is a software developer. It is up to the user to either build a box or buy a prebuilt one. One can buy the highest quality hardware available and built one of the best and most expensive systems out there... or not. People dumb enough to criticize either OS are either not familiar with one of the two or just plain trolls. Reply

I must say, I'm surprised that Photoshop manages the video memory that way. To have to quit the app and not close the picture to recover the video memory? Terrible! Many people buy Macs for the professional photoshop work, and this has to be a serious drag on productivity once the RAM is gone. Do you think it's Adobe's fault, or could it be a limitation where OSX doesn't know what to do with window-in-window closing? Reply