PDA

View Full Version : How does dynamic memory allocation work for intergrated video?



godzero
September 9th, 2005, 05:30 AM
I Have a shared memory video controller, which can allocate up to 64MB. At boot time, it allocates 2 MB.

Once I'm fully booted up, lets say I launch tux racer. There should be more texture than can fit in 2 MB, so it needs to allocate more memory.

How does this happen? Does the gpu request memory from the driver, or is it handled by the mmu? Does the kernal think the driver or Xorg allocated more memory, or does it think the world is shrinking?

joker
September 9th, 2005, 01:21 PM
Its been a long time since I had an integrated video solution so this may no longer be accurate, but I had to set how much memory I wanted to be allocated for video in the system bios, and that amount was subtracted from the amount of memory the OS could use as conventional memory. There was not a dynamic reallocation of memory when it was needed by the video card or the OS.

godzero
September 10th, 2005, 01:16 PM
I remember those from back in the day... jump into bios, set the amount of ram to use...

The more modern ones (like mine) do use dynamic allocation, in fact there's no way to override it.

WildTangent
September 10th, 2005, 02:11 PM
my Radeon Xpress 200 (X300 based) can only be set to take 16, 32, 64 or 128 MB, no dynamic allocation. i have mine set for 128, but i have a GB of memory so its not much of a loss

-Wild

TravisNewman
September 10th, 2005, 04:24 PM
At least Wild got it ;)

The OP is talking about Dynamic Memory Allocation. Basically, its like CPU frequency scaling on laptops. It doesn't use it unless it needs it, then it takes it automatically. Quite interesting, but I have no clue how it works.

floppy
September 10th, 2005, 04:41 PM
For a good explanation of how it works, try this Intel document:
ftp://download.intel.com/support/graphics/intel845g/dvmt.pdf

godzero
September 12th, 2005, 11:49 AM
That was exactly what I wanted, thanks *floppy*

Circus-Killer
August 25th, 2008, 08:38 AM
I Have a shared memory video controller, which can allocate up to 64MB. At boot time, it allocates 2 MB.

Once I'm fully booted up, lets say I launch tux racer. There should be more texture than can fit in 2 MB, so it needs to allocate more memory.

How does this happen? Does the gpu request memory from the driver, or is it handled by the mmu? Does the kernal think the driver or Xorg allocated more memory, or does it think the world is shrinking?

are you asking simply out of interest, or are you like me who seems to think that it doesnt work in ubuntu?
cos everything works fine until i try play graphic intensive games like doom3.
i've got a sneaking suspicion that the dynamic video memory thingy dont work so well in ubuntu. im pretty sure my video memory is sticking to the lowest 8mb without trying to access more.

-grubby
August 25th, 2008, 08:43 AM
are you asking simply out of interest, or are you like me who seems to think that it doesnt work in ubuntu?
cos everything works fine until i try play graphic intensive games like doom3.
i've got a sneaking suspicion that the dynamic video memory thingy dont work so well in ubuntu. im pretty sure my video memory is sticking to the lowest 8mb without trying to access more.

This post is 3 years old..

Circus-Killer
August 25th, 2008, 08:45 AM
whoops, talk about waking the dead :P

Sinkingships7
August 25th, 2008, 09:38 AM
whoops, talk about waking the dead :P

Well, while we're awake, might as well make the most of it before it's closed. What graphics card do you have?

Sef
August 25th, 2008, 10:00 AM
Closed. Necromancing.