How Much Video Memory Do You Need in OS X?

by Anand Lal Shimpi on 7/16/2009 7:00 PM EST
Comments Locked

30 Comments

Back to Article

  • sxr7171 - Saturday, July 18, 2009 - link

    I mean if 1GB video RAM can handle around 140 windows open at 2560x1600 which I'd guesstimate maybe 5-10% at best of users use, then this is a non issue. Who has 140 windows up? For that matter who has even 70 windows up?

    I don't know how much Apple gimps out its shipping video cards these day but 512MB is mid-end at best these days. Who would buy a machine with less than that to power a 2560x1600 display?

    On the Macbook "Pro" supposedly all video memory is shared memory anyway. So what difference does it make there. With iMacs you have a display built-in. So you are looking at a $3000 Mac Pro to have effective use of video memory.

    I think OSX is great but Apple hardware is just completely inadequate in choice. You have to spend big bucks just to have th concept of video memory that is not shared since the cheapest desktop is $3000. The rest are shared video memory queens. There are many gaps in the lineup due to there being a monopoly on machines with supported Mac OS X. There is no ultraportable worth its salt.

    The Macbook Air is gimped and weighs THREE pounds. That is a weak proposition to anyone with a Lenovo X-series or Dell E4200 or Toshiba R500/600 or many better Magnesium Alloy (not Coke can aluminum) chassis based ultraportables. It's about time I can just pay a premium to run Mac OSX on the superior hardware that is available to Windows users. Just license me the OS for $300-350 and let me use it in supported format. I hate to be locked in using hardware designed for the lowest common denominator. It would be like Windows 7 could only run on the Toshiba/HP/Dell low-end stuff found at Best Buy. If you bought a business level Latitude or Thinkpad then you must use Linux. That's what sort of insanity this amounts to.
  • DeathRayLoveMachine - Saturday, July 18, 2009 - link

    [quote]I mean if 1GB video RAM can handle around 140 windows open at 2560x1600 which I'd guesstimate maybe 5-10% at best of users use, then this is a non issue. Who has 140 windows up? For that matter who has even 70 windows up? [/quote]

    Not all apps tested used so little VRAM, remember. Photoshop took 56MB per image, and it failed to release RAM when images were closed. If that's the case, you could easily chomp through 512 or 1024 MB of VRAM just by opening and closing files.

    [quote]On the Macbook "Pro" supposedly all video memory is shared memory anyway.[/quote]

    The Macbook Pros have always had discrete video cards with dedicated VRAM. The only exceptions are the new 13" Macbook Pro, which has a 9400M, and all the other current-generation Macbook Pros, which have both integrated AND discrete video cards (on the logic that you can use the discrete unit while plugged in).

    [quote]The Macbook Air is gimped and weighs THREE pounds. That is a weak proposition to anyone with a Lenovo X-series or Dell E4200 or Toshiba R500/600 or many better Magnesium Alloy (not Coke can aluminum) chassis based ultraportables.[/quote]

    I only checked out one of the laptops you listed, the Dell E4200, but it seems like a joke compared to the Macbook Air. Dell doesn't list the weight or battery life of the E4200, but I understand the battery at least is worse than the Macbook Air's; and on top of that, the Macbook Air has a faster processor (1.8 or 2.16GHz with 6MB cache versus 1.4-1.6 with 3MB on the E4200), and a videocard which is actually worth a damn (a 9400M, versus some Intel garbage on all the E4200s).

    Now here's the part that really shocked me: the Macbook Air was CHEAPER than the Dell, in addition to utterly trashing it in terms of performance. The entry Macbook Air is $1500, versus $1720 for the Dell, and the upgraded Macbook Air with SSD is $1800, versus $1900 for the upgraded Dell. (One thing Dell has the Apple doesn't: SSDs on the entry model. But the entry Macbook Air has 120GB versus the Dell's paltry 64, not to mention that it's $220 cheaper.)

    I don't know what you mean about "Coke can aluminum," since I quite like the new Macbook chassis and I haven't used the E4200.

    Anyway, please do a better job of checking your facts
  • DEredita - Tuesday, July 28, 2009 - link

    Even the base 15" Macbook Pro at $1699 comes with a 9400M that used shared ram. That pathetic. It's a Pro series laptop at ~ $1700, it should have a dedicated GPU with dedicated Vram at that price. Face it, Apple hardware is inadequate. They're hyped up to be this graphics machines, when in reality, they use bargain basement integrated video solutions, which they pawn off at monstrously high costs.
  • snookie - Thursday, August 27, 2009 - link

    I can't disagree with that. I just bought a new 2.8ghz and spent quite a bot extra to get the 512MB vid card. At least I ought it online and between rebate and not taxes saved $449.
  • DeathRayLoveMachine - Saturday, July 18, 2009 - link

    Pardon the formatting and type-checking, apparently I am stupid.
  • MrPIppy - Friday, July 17, 2009 - link

    Actually, by default, Leopard still draws windows in system memory and then has the GPU composite them.

    Siracusa's article describes Tiger's new Quartz path that had the GPU both draw windows and composite them. Tiger called it Quartz 2D Extreme, Leopard calls it QuartzGL. Neither system has it enabled by default, I assume because of application compatibility problems. Applications in Leopard can turn it on for themselves though.
  • fmaste - Friday, July 17, 2009 - link

    I OSX or Photoshop problem not freeing up the space of each closed image?
    I think is Photoshop
  • psonice - Friday, July 17, 2009 - link

    I'm pretty sure it's photoshop.

    Normally you create an openGL texture, which will allocate the memory, do what you want with it, then release it at the end. At that point (or very soon after) if nothing else is using it, the memory gets deallocated. If you told something else to keep hold of the texture and forgot to tell it to let go when you're finished, the OS won't deallocate the memory because it's still being used - at that point, you have a memory leak. When you quit the OS, the OS is then sure nothing is using it and you get your memory back.

    There are things in the OS that leak memory, so it is conceivable that it's an OS problem, but that has all the signs of being an application issue.
  • erple2 - Saturday, July 18, 2009 - link

    That's not necessarily a memory leak - it's possible that Photoshop keeps that RAM "paged" for future use to speed up repeated access to that image. That's a similar way to how databases utilize their space - they don't actually free up the disk space used until you dump and reload a database, even if you "delete" data out of them.
  • psonice - Saturday, July 18, 2009 - link

    I'm sure they do that to speed things up while you work on an image, but surely when you actually close the file you've finished using it and the memory should be freed :)
  • Larso - Friday, July 17, 2009 - link

    Speaking of OS X memory usage, why is it that the (all programs quitted) memory consumption just keeps on increasing when the system is not rebooted for days/weeks? I know that the inactive memory is of no concern, but to me it seems that both wired and active memory consumption indeed grows. Sorry if the question is slightly offtopic, but I have not been able to find a good answer anywhere.

    Is it normal OS X (leopard) behaviour? Of course, the software updates mandates a reboot every now and then. But as a switcher, I had hoped that the days of rebooting every now and then, just to make the OS happy, would be over... Not so it seems.
  • Griswold - Friday, July 17, 2009 - link

    I havent rebooted my windows machines just to make the OS happy since the (to me) long gone days of XP. However, the effect you describe can be seen on pretty much any OS because its most likely some driver with a memory leak...
  • uibo - Friday, July 17, 2009 - link

    what you have described here is a memory leak bug or some sort of aggressive caching (which shouldn't happen if your computer is not doing anything).
  • vj8usa - Friday, July 17, 2009 - link

    Can VRAM usage even be monitored in Windows? I'd love to see how much I'm using in Vista, but can't figure out how.
  • iwodo - Friday, July 17, 2009 - link

    What about playing Video, Viewing Image SlideShows .. etc

    By the graph it looks like most of us really only need 512MB Video Memory.
  • SiliconDoc - Thursday, July 30, 2009 - link

    Person who just got the GTX285 for their Mac replacing the red rooster failure.
    " I have a new Mac Pro, a 30" Cinema HD Display and now an amazingly improved image on the screen. I had the ATI Radeon 4870 HD but …Read morewhat a difference 500 more MBs make! Again I say WOW! "
    ----
    http://store.apple.com/us/product/TW387ZM/A#">http://store.apple.com/us/product/TW387ZM/A#
    ATI loses again....
    ----
    Also, suddenly, a 1 gig card is not wanted at an enthusiast site, namely because it's an Nvidia. roflmao - it's soooooo predictable here I can hardly believe this article - and guess who wrote it...rofl
    ---
    Yes, no need for more video memory - a gig is a waste...OSX who needs more vid memory hahahahahahaaaaaaaaaaaaa
    ----
    Leave it up to Derek here to dis Nvidia AGAIN, by asking if the GTX285 with 1 gig is "even neccessary" for OSX... the bleeding bias once again cannot be contained.
    Enjoy a 512 card.
    Good lord.
  • anandtech02148 - Thursday, July 16, 2009 - link

    interesting, is microsoft doing anything similar to this? they have tons of gpus unlike Apple. such a waste for a gpu to just play video games.
  • Flunk - Thursday, July 16, 2009 - link

    Yes, it's called Aero. The big reason why you really need to have a Directx 9.0 GPU to run Vista properly.
  • Voo - Thursday, July 16, 2009 - link

    If we're at it.. is there any known workaround for the Photoshop memory leak?

    Even if you've got a 1024mb card, you'll inevitably run out of memory and things start to get really slow till you restart Photoshop.

    Annoying, but I found no solution on the net :/
  • psychobriggsy - Thursday, July 16, 2009 - link

    I'd imagine that video memory would be:

    desktop X * desktop Y * 4 (32-bit screen) * 2 (double buffering)
    + for all windows
    window X * window Y * 4 (32-bit screen). I don't know if there is a display image and a render image, or if that is configurable in the application itself (e.g., to prevent tearing in videos Quicktime might have a display and render texture, but a normal window doesn't need that).

    So, 2560x1600 would be 16MB a window. Your Safari windows were nearly half-width but full height? That would explain 7MB a window. The desktop is probably 32MB straight up (double buffered), and the background picture another 16MB. However it is possible that Apple uses some form of texture compression for these types of texture.
  • psonice - Friday, July 17, 2009 - link

    I doubt they're using texture compression. Also a screen-sized window doesn't necessarily mean you need to store the full window in video memory - it depends on how the compositing works.

    E.g. instead of drawing the complete window and storing that in memory, the compositor can draw just the window elements and draw them all to screen when they're needed. So you'd just store the close/maximise/etc buttons, the window frame (which can be a repeating texture and take very little space), scroll bar buttons, standard UI buttons, and then the actual window content.

    Note that when you do it that way, there's a lot of duplication when you have multiple windows, and you only need to store most of the window elements once.

    I suspect that fillrate and memory bandwidth actually get just as important as vram when you have a lot of windows open, because you're effectively asking the GPU to draw every window at once when you use expose - if that's 1gb of texture data, that's a lot of drawing + moving in/out of memory.

    Anand: how was performance when you got close to filling video memory but hadn't quite filled it?
  • haplo602 - Friday, July 17, 2009 - link

    texture compression is part of the opengl driver, you just enable it and that's all I guess ...
  • alpensiedler - Thursday, July 16, 2009 - link

    it'd be nice to see a vista or ubuntu (compiz) comparison. i wonder which os does best with video memory usage.
  • inighthawki - Thursday, July 16, 2009 - link

    agreed, as well as windows 7 to see if they optimized anything there.
  • Souka - Friday, July 17, 2009 - link

    Isn't this really an Adobe issue, not an OS?

  • inighthawki - Sunday, July 19, 2009 - link

    what does adobe have to do with how much memory the OS uses for a gui window?
  • Souka - Monday, July 20, 2009 - link

    I do understand that OS X has a "problem" with video memory, based on this article.... my question was in reference to this statement: "And once again, you don’t get that memory back when you close your images - only after you exit Photoshop"

    So if I open 50 Safari windows...then close 49 of them. the memory footprint will still be that of 50? If so...then yes, OS issue..got it.

    :)
  • inighthawki - Monday, July 20, 2009 - link

    oh ok i understand, in my previous reply i was targeting how much video memory a single window uses in win7 compared to osx (which OS uses less video memory), not necessarily reclaiming memory.
  • sarangiman - Tuesday, January 11, 2011 - link

    Dear Anand,

    What software did you use to monitor VRAM usage in OS X? I've Google'd ad nauseam & can't find any such utility yet clearly you used one in writing this article...

    Thanks,
    Rishi
  • sarangiman - Tuesday, January 11, 2011 - link

    Nevermind. I figured it out.

    For those interested: It's the 'OpenGL Driver Monitor' under:
    /Developer/Applications/Graphics Tools

    -Rishi Sanyal

Log in

Don't have an account? Sign up now