Graphics Memory Sizes Compared: How Much Is Enough?
EconolineCrush writes "Trying to decide between whether or not to get a 64MB graphics card, or spring for that 128MB version? Hit up this article, which explores the performance of ATI and NVIDIA-based cards with 64 and 128MB of memory, before swiping your credit card. Not so long ago 32MB was the top end for graphics memory on consumer video cards, but now even budget cards are available with 128MB. 128MB might seem excessive now, but a year from now 64MB cards might just be obsolete."
a year from now 64MB cards might just be obsolete
Bah. Next thing you'll be trying to tell me my Voodoo 3 2000 PCI is obsolete!
this might be offtopic, but why can't the RAM on graphics cards be modular, like the stuff we stick in computers? Is it a card manufacture conspiracy? a different type of RAM? I would be willing to buy a high end Graphics card if I could eventually stick 256, or 384 MB on the card.
Sig (appended to the end of comments you post, 120 chars)
How can you say that a 64Meg Video card may be obsolete in a year!?
If a piece of hardware is doing what you need it to do, then it is not obsolete. Not every plays/needs/wants the latest UT2003/Doom3 game.
"This must be a Thursday, I never could get the hang of Thursdays."
Maybe with enough RAM, processor speed and plasma displays I could create a $50,000 virtual reality room where winamp visuals would rival a $3.00 hit of LSD.
Wouldn't that be cool. You could make your freakin trip end when you needed it to. Game Over Man. Legal too.
"...but a year from now 64MB cards might just be obsolete."
So? A year from now, 128MB might be a low-end card, too. So in a year, buy a new card. Don't invest in tomorrow's technology today at a premium, when you can get it tomorrow at a discount. That's why smart buyers invest in modular components. When your hardware gets outdated, pluck and chuck.
I never invest in the top-end. I buy in the middle ground. Why? Because components drop from high-end to mid-range very quickly, but then stay there a long time before obsolescing to the low-end (or dead-end). And when a product drops from the high-end to the middle ground, the pricetag typically gets cut in half.
Here's something you should consider before buying a 128 MB GeForce Ti-series card. There are four choices you can make right now:
;) .....
Ti-4600: Highest price, best features, 10.4 GB/s memory bandwidth, 650 MHz memory clock
Ti-4400: High price, excellent features, 8.8 GB/s memory bandwidth, 550 MHz memory clock
Ti-4200 (1): Decent price, great features, will handle BF1942 and UT2003, 64 MB limit, 8 GB/s memory bandwidth, 500 MHz Memory clock
Ti-4200 (2): High price, great features, slowest out of all 4 thanks to memory speeds, will handle BF1942 and UT2003, 128 MB limit, 7.1 GB/s memory bandwidth, 444 MHz memory clock.
Basicly, on the 4200's, if you go for double the memory for almost double the price, you will see a performance hit.
After my research (urged on by PNY's box), I decided that by the time I need 128 Mhz, I'll also want the features of a chip beyond the current Nvidia line.
Of course, if you want anything that performs beyond the 4200, then why bother reading anything here in slashdot? You're getting at least 128 MB on your card
So, this weekend, I found a 64 MB Ti 4200 for $129, and it printed out a $30 rebate at the counter. Happy day, indeed. I spent the rest of the weekend playing OpenGL-boosted Doom and Hexen.
BTW, if you are completely out of the know, but love gaming, do not but the MX series of cards. They are not for you.
AGP will let you run the textures from your video card off of system RAM, but there is still a speed loss involved in this. More RAM is of course nicer for newer games. Older games, it doesn't mean squat. No games, squat. Games without 3d, squat. (no I'm not counting those who use the video card for system memory).
However, if you intend to play Q3 or whatever enough at superhighres, ultracolordepth, whateverwhatever, then you may want more Video RAM. Crank down the texture detail a little bit and you don't need as much, I'm sure the game is just as fun.
AGP, fast video cards and video RAM are all about games. But when you can buy a whole PS2 for the cost of an expensive video card, it makes you think a bit.
With my old 15" 1024x1024maxres monitor it doesn't matter much anyhow - phorm
You don't. The article is not meant for you. Move along.
The Kruger Dunning explains most post on
My 1MB trident SVGA card works just fine. Enlightenment looks great in 800x600x16bit,
and I play alpha centauri, starcraft, freeciv, etc. And I have been using it day and night since around 1993 without it melting, and with no noisy cooling fans. Considering it cost me one buck, I think that it is not a bad bargain.
Frame, depth, and stencil buffer: 1024x1024x(32 bits + 32 bits + 8 bits) = 9 megabytes
9 megabytes so far. No problem. Double that when I push the resolution up to 1600x1200 for demos, but we'll ignore that for the moment. Now, the model I'm using has 19MB of surface texture, so we're up to 28MB. The system I'm running on this poor hypothetical card uses 512x512 textures to replace distant geometry. Each one takes up 768K of memory and I've generally got a working set of between 40 and 60 textures. There's another 30-45MB, so total usage is somewhere between 58 and 73MB. Add in shadow maps and we lose another 20 or 30MB. The 64MB card is now swapping to AGP memory. The 128MB card is filling fast. It's adequate for the current generation of the system I'm running, but before I can write the next couple versions I'm going to have to implement some serious resident-texture-set cache management.
Now, you can certainly argue that this is an atypical application. You would be quite correct. However, I do need that much video memory and I do use it. Yes, it's massive overkill if you want to play Quake, Unreal, whatever, but once you start looking into more exotic applications it's easy to get into situations where you can use arbitrary amounts of texture RAM. Real-time shading can get you there in a hurry, too, once you start using textures as lookup tables for expensive-to-compute functions (e.g. light fields or factorized BRDFs) or caching the framebuffer for later re-use.
So yes, 90% of the programs 90% of users will run will currently fit neatly in 64MB of video memory, but there definitely exist systems that require more than that.
Don't invest in tomorrow's technology today at a premium, when you can get it tomorrow at a discount. That's why smart buyers invest in modular components. When your hardware gets outdated, pluck and chuck.
No! No! No!
Please DO invest today in the top-end graphics cards! Spend two to three hundred $ buying the best cards on the market! (Or more!)
You see, unlike the parent poster, I think this is a positively brilliant plan for each and every one of you in the high-end gaming crowd!
Look at the benefits: State of the art technology, frame rates so fast that subliminal advertising is practical, bitBLTs that could move your entire DNA encoding in one transfer, and colour depth that makes the games so close to real life you never have to leave your chaise-lounge and encounter the real world!
And as a nice bonus for those of us in the category of the less driven to best-of-the-best-damn-the-cost, there is this:
As all of the high end gamers drive the market up, some really decent hardware becomes really cost-effective and affordable for the rest of us!
So yes, Please Please Please DO buy the BEST and Most Expensive! Drive the market as hard as it can be driven! The mild and meek will quietly thank you and buy really nice (but obviously outdated) products for a bargain basement price!
Ooops.... forgot to tag the whole post <SARCASM>
-- Mal: "Well they tell you: never hit a man with a closed fist. But it is, on occasion, hilarious."
These card use up to about 4MB - more like 2MB or less for 16-bit modes, for the framebuffer, and the rest is used solely for storing textures.
If you do not use OpenGL/Direct3D, then any RAM above, say 8MB (you may be doing dual or triple-head at 1600x1200 32bit or more), is completely useless.
The extra bandwith on the cards is also useless, as only 3D operations are accelerated across the super-fast busses built into these cards.
Everything else, including 2D blits in the majority of available OpenGL/Direct3D drivers are handled by the host CPU and involve reading from system RAM and passing that data across the AGP bus.
I am not aware of many (any?) games that can take advantage of more than 64MB of texture RAM, and while games that *may* take advantage of >64MB are on the horizon, the big news for games is vertex/pixel shaders, rather than the ability to texture map hundreds of megabytes of pixel data per frame.
There are applications that will benefit from the availablity of 128MB or more texture RAM, but these are typically custom-written scientific visualisation apps, or conceivably you could use 128MB of textures to do realtime previews in your lightwave/3DS Max/Maya/Blender scenes.
However, the actual utility of this RAM for most desktop users and even gamers is rather questionable. I don't doubt that the Radeon 9700 and the NVidia Ti4600 are fast cards, but they still rely heavily on the host CPU to achieve their stellar performance, as opposed to some of the professional cards which provide much more capable geometry engines and accelerate practically all of the openGL pipeline, as opposed to the consumer cards which are focussed mostly on texturing and fillrate optimization, ideal form games but not necessarily optimal for other forms of 3D activity.
That being said, the pace of development from Intel and AMD have made it more difficult to justify using dedicated hardware for these seteps, as a 2GHz Athlon will probably out-light-and-transform dedicated OpenGL hardware, which is much more costly and low-volume to produce.
The SGI O2 is a good axample of a machine that simply uses system memory to store textures, and while the SGI's graphics system is not in the same class as some of the more modern 3D boards from NVidia and 3DLabs, it is certainly sufficient to do impressive texture-mapping demos. This is really not an option on the current x86 architectures, but is a useful example of the 'other' way to handle texture memory, as it allows the user of the system to make maximum use of the resources available - i.e. when 3D graphics are not used, the 'texture memory' is available to the apps, and vice-versa.
I think it is amazing that we now have consumer cards that contain more texture memory than was typically available as system RAM in a mid-range 3D workstation a few years ago, but the unfortunate thing is that very, very few people are able to put those capabilities to real use with the current crop of system architectures, applications and games available
I gots ta ding a ding dang my dang a long ling long
Quartz Extreme.
:-D
Ok Ok, so it's a Mac OS X thing, so what? How long before M$ innovates this feature into Windows? How long before it's patched into XFree86?
Think of all the cool things you can do, both for visual pleasure and UI functionality by operating in an accelerated, 3D enviroment, while the main CPU is free to crunch away at whatever it is you have your CPU doing, thus improving overall speed. Yes, I realize the CPU still has to intruct the card of what to do, but at least we're not blitting as we're trying to host web pages, for example.
For that you're going to need texture memory. Lots of texture memory. When you run out of memory on the card, the framebuffers must be stored in RAM. When those framebuffers are needed, you'll need to swap them into the card's RAM. This will cause the main CPU to stutter as it pumps a couple 8-9MB buffers through the system & PCI bus, which, needless to say, will get old fast, especially if the framebuffers get paged out to a swap file. Yuck!
Of course, maybe you should wait until the other 2 of the Big Three implement this in some form (I know some work as been done on a 3D window manager for X, no idea if it's meant to take advantage of acceleration, though). I've heard rumor that M$ is working on it for Windows XP(ensive) 2005 or 6 or whatever it is, and I'm sure some Linux hacker has it working on his overclocked Athlon box already. Either way, you probably want to be ready for this. Or wait and buy a card when it finally happens, when 128MB will be standard.
Since color depths will probably never exceed 48-bit (32-bit + alpha), screen resolutions are fine at 2???X???? or whatever the current highest is, it'd take quite a few windows open at once to framebuffer all that memory up. Assuming about 8 megs per window, which is admittedly above average for most windows (sans Photoshop or web browsers), you'd get about 14 or 15 windows open at once.
Oh well, someday, you'll be sorry your card doesn't have 512MB on-board
CAn'T CompreHend SARcaSm?
Here's what Tim Sweeney says about texture caching:
"This is something Carmack and I have been pushing 3D card makers to implement for a very long time. Basically it enables us to use far more textures than we currently can. You won't see immediate improvements with current games, because games always avoid using more textures than fit in video memory, otherwise you get into texture swapping and performance becomes totally unacceptable. Virtual texturing makes swapping performance acceptable, because only the blocks texels that are actually rendered are transferred to video memory, on demand.
Then video memory starts to look like a cache, and you can get away with less of it - typically you only need enough to hold the frame buffer, back buffer, and the blocks of texels that are rendered in the current scene, as opposed to all the textures in memory. So this should let IHV's include less video RAM without losing performance, and therefore faster RAM at less cost.
This does for rendering what virtual memory did for operating systems: it eliminates the hardcoded limitation on RAM (from the application's point of view.)"