Video Memory?

Lollipop

New member
How does it work? What does it do? Why is it needed, can't some other component do its job?

EXPAND MY KNOWLEDGEplease
 
Why do you need video memory?? Is that what you're asking?

Yes
smile.gif
 
okay here goes....

  • take any 3D game model...
  • it has geometry and textures (GnT)...
  • these are store in data files...
  • upon level/scene refresh (each frame in the FPS), all this data is parsed on loaded on to the gpu, dependant to its LOD (level of detail).

even though most the scene's GnT (after object occlusion(visibilty)) is stored on the HDD, the program's fragment shaders call:

  1. the geometry for instancing or single shot draw
  2. textures for each of the visible model's meshparts, with their LOD'd equivalent

fragment shaders are written especially for GPU computation, as GPUs are often much faster than CPUs at rendering.

a model may have several fragment shaders (.fsh), but these in turn call other smaller FSHs. it it stupid to have the same code in all shaders. these code fragments are split up and spliced back together when needed. these also take up GPU memory, as in most cases all FSHs are loaded onto the GPU at the start of a game/app to reduce load times later on down the app_life.
 
How does it work? What does it do? Why is it needed, can't some other component do its job?

EXPAND MY KNOWLEDGEplease

Really??? are you serious??

Have you just entered the computer world? Not trying to be an arse, just trying to get some background to better answer your question = Do we answer simply or complex answer.
 
Maybe lollipop was refering to the fact that cheaper solutions use system memory rather than dedicated vRam? Obviously vRam is damn fast compared to system ram, even fast system ram, plus it gets that vRam all to its self
smile.gif


Even the Sandy B. on-CPU GPU uses system ram, and by all accounts it's a perfectly good solution to general desktop stuff. As a work/internet PC for me it'd likely be all I need. Same is true for a media box and Sandy B. can handle that just fine I'd have thought.

I think it's the power-house gaming GPU's that really need dedicated vRam as system ram would knobble their performance somewhat I'd imagine
smile.gif


Cheers,

Scoob.
 
What Scoob said

And yea i consider myself a novice still, only been in the PC world for 1½ years
tongue.gif


And thanks for explaining Dug and Cpt. Caveman
smile.gif
 
How does it work? What does it do? Why is it needed, can't some other component do its job?

EXPAND MY KNOWLEDGEplease



1. How does it work?

vram is much like system ram (dram), but different at the same time, it is different as in it is much faster than system ram and is dual-ported, meaning it can input and output at the same time.

vram is faster because dram typically accesses up to 1024 bits at one time, however just a few of these bits are used for actual data and the remaining bits are discarded, whereas vram does not discard excess bits of data and makes use of them. The way it does this is kind of hard to explain so a wiki link will have to suffice Clicky

2. What does it do?

Think of video ram and a video graphics adapter as dynamic ram and a central processing unit.

It kind of works like dram (system ram), where the cpu can store and retrieve data on an as-needed basis, however the instructions/data will of course be graphics related, and of course vram is dedicated to the vga.

3. Why is it needed, can't some other component do its job?

vram, as mentioned is exceptionally fast and is the most common type of dual-ported ram (as mentioned above). dram or any other ram wouldn't be able to do its job at the same rate.

If vram wasn't used the only other dual-ported ram available to use would be sram (static ram) and sram is typically used as cache memory, embedded in electronics, hdd buffers, router buffers and other various uses in small amounts of memory (bytes to kilobytes), no where near the gigabytes used by vga's.

I'm guessing it would be more expensive to use sram instead of vram, that's why vram is typically used.

Also some graphics cards, typically embedded ones use system memory (dram) via software as there is no dedicated vram. This works fine for some tasks and might hurt the system of ram is already low, however for gpu intense tasks there's no way dram can do the same work rate as vram and that's why you get low fps or get graphical hangs.

My 2p.

 
ram is memory that is used to temporarily store data that is required throughout the process/thread. its very quick to access as opposed to hdd memory/dbs/web service so from a programmers perspective using this memory has performance advantages. the more ram you have the more programmatic objects you can cache and access/manipulate at any time throughout the process/thread instantly.

so for gfx architecture it would go something like: the cores process the scene and use the ram to store the objects that make the scene (polygons/textures etc). Once completed it is sent to the display, which is called buffering. the more vram the more detailed/complex a scene you can cache and therefore send to the display quickly without having to write to disk/use system memory which will take much longer
 
Back
Top