View Single Post
  #6  
Old January 18th 16, 09:18 AM posted to alt.comp.hardware,alt.comp.sys.hardware,alt.computer.hardware
Ant
external usenet poster
 
Posts: 858
Default How come RAM is taken away for video cards? Because of my video card's VRAM?

Interesting. I am using PAE and have no onboard video. Oh well, thanks
anways.

You need an article on the "32-bit Windows memory license", which
isn't really a memory license as such, but is implemented
as an address space limitation. You have 4GB of addresses,
some addresses are reserved for bus address decodes, leaving
the rest. The video card memory needs to be decoded on
those busses as well. The bigger the onboard video card
memory, the more addresses needed. The remaining addresses,
are used to access your motherboard memory DIMMs. If there
aren't enough addresses left to access all of the memory
on your DIMMs, then you don't get to use it on 32-bit Windows.
Some portion of your motherboard DIMMs is then simply
inaccessible. There's no address available to get to
that chunk of memory. Windows then claims "2.5GB free".


WinXP actually has PAE enabled in SP3. And 32-bit Windows really
does have access to memory above 4GB. I know this, because
on the computer I'm typing this on, my DataRAM RAMDisk software
is using the top 4GB of my 8GB of RAM, as a RAMDisk, while
the bottom RAM, Windows claims "3.1GB free" or so. And this
works, because the "Windows memory license" only applies
to Ring 3 (applications) and not Ring 0 (kernel and drivers).
My RAMDisk is driver-level based, drivers run in Ring 0, and
since PAE is turned on, the upper memory is actually available.
But can only be used for a RAMDisk. Now, if I put the Windpws
pagefile on the RAMDisk, I can "outfox" Microsoft a tiny bit.
But just a tiny bit. I can run multiple programs, and actually
sharing 5GB of RAM over three programs if I want. (Swapping
happens at RAMDisk speeds.) But one program alone cannot have 5GB.
I ran my system that way for a few days, before taking that
setup apart. There were a few "glitches" that don't make the
method practical. I tested it, until the glitches in the scheme
showed up.


If you were using 64 bit Windows, you would discover
next to no penalty at all. Exceptions might include,
slightly less than optimal results on 8GB chipsets
with 8GB of DIMMs installed. Many other chipsets,
they made the address space large enough that it no
longer clips off the top of memory. For most users,
when they boot into 64 bit, they no longer seem
to care about those sorts of details :-)


Chipsets (or IMCs) that support more than 4GB of
memory properly, use "memory hoisting" to lift
some structurally inaccessible memory, to above
the 4GB mark. And that's part of the reason you
get to use all of it, with the 64 bit OS. There was
at least one (stupid) Intel chipset, where there
was no hoisting, you could install 8GB of DIMMs,
and the chipset prevented usage of any more than
4GB of that. Lucky you, if you bought one of those.
Only one specific Intel chipset was affected.


*******


A thorough treatment of graphics memory or address usage
would include a description of...


1) AGP GART (and that old setting in the BIOS)


2) Shared memory for Northbridge or CPU graphics
a) Static allocation for frame buffer
b) Dynamic allocation only while playing 3D games
c) Earlier designs that supported only static, and
the user had to decide how much to donate to the
GPU shared memory setting.


3) NVidia TurboCache on some $50 video cards.
With some cards having only TurboCache, some cards
having onboard as well as TurboCache, and so on.
What a mess.


But I'm not going to write those up. Because based
on your premise in the question, they don't apply
to you.


Paul


--
Quote of the Week: "Applied mathematics will always need pure mathematics, just as anteaters will always need ants." --Paul Halmos
Note: A fixed width font (Courier, Monospace, etc.) is required to see this signature correctly.
/\___/\ Ant(Dude) @ http://antfarm.home.dhs.org (Personal Web Site)
/ /\ /\ \ Ant's Quality Foraged Links: http://aqfl.net
| |o o| |
\ _ / Please nuke ANT if replying by e-mail privately. If credit-
( ) ing, then please kindly use Ant nickname and AQFL URL/link.