It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
avatar
Ralackk: It is 4GB of ram or there abouts for a 32bit system. The reason you may see less is because it includes intergrated graphics chip ram and your graphics card.
avatar
hedwards: I'm using a discrete videocard. It's a bloody incompetent mistake if MS is using that memory anyways.
Well surely it still has to address the memory in the card?
avatar
Ralackk: It is 4GB of ram or there abouts for a 32bit system. The reason you may see less is because it includes intergrated graphics chip ram and your graphics card.
avatar
hedwards: I'm using a discrete videocard. It's a bloody incompetent mistake if MS is using that memory anyways.
Some (but not all) of that memory has to be mapped into your address space; otherwise there would be no way to transfer data to or from the GPU.

Windows does this with "apertures". In the old AGP days, Windows made the aperture setting visible. Now it uses an aperture of whatever size it thinks it needs, and Windows 7 can have multiple apertures.

Apertures show up in your display adapter's memory statistics as "shared system memory" under Vista and W7.

For example, my old 8800 GTS 512, which I know doesn't have more than 512MB memory, shows up in Vista as having 576MB. The additional 64MB is the aperture that Windows uses to copy data in and out.

The fact that it shows up as "576MB" is just an artifact. 512MB of that memory is on the card where it isn't addressed by Windows, and 64MB is in system space where Windows can copy to and from the 512MB on card.
Post edited June 01, 2011 by cjrgreen
avatar
hedwards: I'm using a discrete videocard. It's a bloody incompetent mistake if MS is using that memory anyways.
avatar
eyeball226: Well surely it still has to address the memory in the card?
Yes, but it's something funky. In moving up from 512mb of video RAM to 1024mb of video RAM, the amount of total physical memory available didn't change at all.

My point was that MS claims to support the RAM without actually bothering to mention that it's supported but you can't actually use all of it. It's an architectural limitation, I just don't like the lack of honesty on their part regarding the issue. If they claim to support it then it should be usable.

Yes, I did kind of word that badly.
avatar
hedwards: I'm using a discrete videocard. It's a bloody incompetent mistake if MS is using that memory anyways.
avatar
cjrgreen: Some (but not all) of that memory has to be mapped into your address space; otherwise there would be no way to transfer data to or from the GPU.

Windows does this with "apertures". In the old AGP days, Windows made the aperture setting visible. Now it uses multiple apertures of whatever size it thinks it needs.

Apertures show up in your display adapter's memory statistics as "shared system memory" under Vista and W7.

For example, my old 8800 GTS 512, which I know doesn't have more than 512MB memory, shows up in Vista as having 576MB. The additional 64MB is the aperture that Windows uses to copy data in and out.

The fact that it shows up as "576MB" is just an artifact. 512MB of that memory is on the card where it isn't addressed by Windows, and 64MB is in system space where Windows can copy to and from the 512MB on card.
I found that out after doing the upgrade. My main issue is that it's a blatant lie for MS to claim that they support 4gb of RAM with their OS when they really mean that they have addresses for 4gb and that consequently it isn't all going to be addressable. It took me a fair amount of time to find that information.

The bigger issue is that it leads people to think that they've got 4gb of RAM because it's installed whereas they'd be barely any better than if they just paid for 3gb of RAM that the OS could actually address.
Post edited June 01, 2011 by hedwards
avatar
eyeball226: Well surely it still has to address the memory in the card?
avatar
hedwards: Yes, but it's something funky. In moving up from 512mb of video RAM to 1024mb of video RAM, the amount of total physical memory available didn't change at all.

My point was that MS claims to support the RAM without actually bothering to mention that it's supported but you can't actually use all of it. It's an architectural limitation, I just don't like the lack of honesty on their part regarding the issue. If they claim to support it then it should be usable.

Yes, I did kind of word that badly.
Microsoft does clearly state that you cannot use the full 4GB on a 32-bit setup. They never claimed to be able to access 4GB of RAM in 32-bit space. I don't know where you got any information that would lead you to believe they concealed this or lied about it.

Anyway, configuring your memory as 2x2GB is cheaper and faster than any alternative, so your damages would be nothing if you took them to court over it.
Post edited June 01, 2011 by cjrgreen
Devices have to map their memory below 4 GB for compatibility with non-PAE-aware Windows releases. Therefore, if the system has 4GB of RAM, some of it is either disabled or is remapped above 4GB by the BIOS. If the memory is remapped, X64 Windows can use this memory. X86 client versions of Windows don’t support physical memory above the 4GB mark, so they can’t access these remapped regions. Any X64 Windows or X86 Server release can.

X86 client versions with PAE enabled do have a usable 37-bit (128 GB) physical address space. The limit that these versions impose is the highest permitted physical RAM address, not the size of the IO space. That means PAE-aware drivers can actually use physical space above 4 GB if they want. For example, drivers could map the “lost” memory regions located above 4 GB and expose this memory as a RAM disk.

In short, XP and Vista can truly manage ~4GB of physical RAM, but shows only the "available" ram. If you have a onboard vídeo with 512mb and something else on-board to complete 1gb, your manager will show only 3GB "available".
avatar
cjrgreen: Microsoft does clearly state that you cannot use the full 4GB on a 32-bit setup. They never claimed to be able to access 4GB of RAM in 32-bit space.
No, MS definitely doesn't state that clearly. There are references to what you can do to use more RAM than that, and even the page where they cover the memory limits indicates that at least from 2k on that they support 4gb of RAM.

It's somewhere between misleading and fraudulent to claim that 4gb of RAM is supported, but fail to mention in the same place that the memory isn't actually addressable.
avatar
AndrewC: Devices have to map their memory below 4 GB for compatibility with non-PAE-aware Windows releases. Therefore, if the system has 4GB of RAM, some of it is either disabled or is remapped above 4GB by the BIOS. If the memory is remapped, X64 Windows can use this memory. X86 client versions of Windows don’t support physical memory above the 4GB mark, so they can’t access these remapped regions. Any X64 Windows or X86 Server release can.

X86 client versions with PAE enabled do have a usable 37-bit (128 GB) physical address space. The limit that these versions impose is the highest permitted physical RAM address, not the size of the IO space. That means PAE-aware drivers can actually use physical space above 4 GB if they want. For example, drivers could map the “lost” memory regions located above 4 GB and expose this memory as a RAM disk.

In short, XP and Vista can truly manage ~4GB of physical RAM, but shows only the "available" ram. If you have a onboard vídeo with 512mb and something else on-board to complete 1gb, your manager will show only 3GB "available".
That sounds about right, the information on MS' site is confusing, references to physical limits, PAE and memory beyond the 4GB threshold.

It doesn't matter a whole lot to me, but the whole issue is hardly one which is easily understood by people not specifically interested in it.
Post edited June 01, 2011 by hedwards
avatar
cjrgreen: Microsoft does clearly state that you cannot use the full 4GB on a 32-bit setup. They never claimed to be able to access 4GB of RAM in 32-bit space.
avatar
hedwards: No, MS definitely doesn't state that clearly. There are references to what you can do to use more RAM than that, and even the page where they cover the memory limits indicates that at least from 2k on that they support 4gb of RAM.

It's somewhere between misleading and fraudulent to claim that 4gb of RAM is supported, but fail to mention in the same place that the memory isn't actually addressable.
avatar
AndrewC: Devices have to map their memory below 4 GB for compatibility with non-PAE-aware Windows releases. Therefore, if the system has 4GB of RAM, some of it is either disabled or is remapped above 4GB by the BIOS. If the memory is remapped, X64 Windows can use this memory. X86 client versions of Windows don’t support physical memory above the 4GB mark, so they can’t access these remapped regions. Any X64 Windows or X86 Server release can.

X86 client versions with PAE enabled do have a usable 37-bit (128 GB) physical address space. The limit that these versions impose is the highest permitted physical RAM address, not the size of the IO space. That means PAE-aware drivers can actually use physical space above 4 GB if they want. For example, drivers could map the “lost” memory regions located above 4 GB and expose this memory as a RAM disk.

In short, XP and Vista can truly manage ~4GB of physical RAM, but shows only the "available" ram. If you have a onboard vídeo with 512mb and something else on-board to complete 1gb, your manager will show only 3GB "available".
avatar
hedwards: That sounds about right, the information on MS' site is confusing, references to physical limits, PAE and memory beyond the 4GB threshold.

It doesn't matter a whole lot to me, but the whole issue is hardly one which is easily understood by people not specifically interested in it.
MSDN on "4-Gigabyte Tuning":

"On 32-bit editions of Windows, applications have 4 gigabyte (GB) of virtual address space available. The virtual address space is divided so that 2 GB is available to the application and the other 2 GB is available only to the system.

The 4-gigabyte tuning (4GT) feature, formerly called 4GT RAM Tuning, increases the virtual address space that is available to the application up to 3 GB, and reduces the amount available to the system to between 1 and 2 GB."

Note that "virtual address space" is not the same thing as RAM ,and what "available only to the system" means is that Microsoft can do whatever it damn well pleases in system space, including mapping devices into it instead of using it for RAM.

Microsoft has never said that you can run an application that requires more than 3GB on a 32-bit setup (except for the OS's that support PAE).
Post edited June 01, 2011 by cjrgreen
64bit is pretty much mandatory now. You'll just have to take any incompatibilities in your stride. But no GOGs should have any (additional) problems due to you using a 64bit OS. Windows 7 64 has very good 32bit support.
avatar
Navagon: 64bit is pretty much mandatory now. You'll just have to take any incompatibilities in your stride. But no GOGs should have any (additional) problems due to you using a 64bit OS. Windows 7 64 has very good 32bit support.
thanks i have 64 bit now love to see my pc using all the memory now, now my only concern is getting the audio to run :)
avatar
hercufles: thanks i have 64 bit now love to see my pc using all the memory now, now my only concern is getting the audio to run :)
Good to hear! Are you using on board sound? Sometimes that can be difficult finding the drivers for. But then if you let Windows update itself (I have it ask before installing anything just to be safe) it should actually download the drivers you need.

That can be a slow process once you've just reinstalled Windows and need to get through all the updates. So you might be best off consulting your motherboard's discs. Vista drivers should work if you have them.
avatar
Navagon: 64bit is pretty much mandatory now. You'll just have to take any incompatibilities in your stride. But no GOGs should have any (additional) problems due to you using a 64bit OS. Windows 7 64 has very good 32bit support.
avatar
hercufles: thanks i have 64 bit now love to see my pc using all the memory now, now my only concern is getting the audio to run :)
Download a 64bit driver for your sound card.
avatar
hercufles: thanks i have 64 bit now love to see my pc using all the memory now, now my only concern is getting the audio to run :)
avatar
KavazovAngel: Download a 64bit driver for your sound card.
done and jacked my headphone behind the pc now it works
Also, some more context to the whole memory allocation thing.

Starting with the 80.xx driver series, NVIDIA's display drivers when used with 32-bit systems that used physical memory addresses higher than 0xffff`ffff would fail. The system would boot, kinda, but the drivers truncated 64-bit physical addresses, causing them to overwrite essentially random bits of physical memory, with massive display corruption and instability.

Rather than dictate that 32-bit drivers should properly handle 64-bit physical addressing, Microsoft altered desktop versions of 32-bit Windows, starting with Windows XP Service Pack 2, so that any physical memory with an address higher than 0xffff`ffff would simply be off-limits. This meant that the drivers never had to cope with high memory addresses, and so that particular bug would never manifest itself.

The repercussion of this is that systems with modest amounts of memory (typically 3 GiB or more) and medium-to-high-end video cards generally cannot use all of their RAM when used with 32-bit desktop Windows. The video card memory is generally mapped, at least in part, to physical addresses below 0xffff`ffff, pushing some amount of RAM to physical addresses above 0xffff`ffff. This RAM is then off-limits to 32-bit desktop Windows.
avatar
AndrewC: Also, some more context to the whole memory allocation thing.

Starting with the 80.xx driver series, NVIDIA's display drivers when used with 32-bit systems that used physical memory addresses higher than 0xffff`ffff would fail. The system would boot, kinda, but the drivers truncated 64-bit physical addresses, causing them to overwrite essentially random bits of physical memory, with massive display corruption and instability.

Rather than dictate that 32-bit drivers should properly handle 64-bit physical addressing, Microsoft altered desktop versions of 32-bit Windows, starting with Windows XP Service Pack 2, so that any physical memory with an address higher than 0xffff`ffff would simply be off-limits. This meant that the drivers never had to cope with high memory addresses, and so that particular bug would never manifest itself.

The repercussion of this is that systems with modest amounts of memory (typically 3 GiB or more) and medium-to-high-end video cards generally cannot use all of their RAM when used with 32-bit desktop Windows. The video card memory is generally mapped, at least in part, to physical addresses below 0xffff`ffff, pushing some amount of RAM to physical addresses above 0xffff`ffff. This RAM is then off-limits to 32-bit desktop Windows.
Thank you for that bit of information! I didn't know the specifics about that particular issue, I often wondered how Windows allocated the available address space and video card memory space...
avatar
AndrewC: Also, some more context to the whole memory allocation thing.

Starting with the 80.xx driver series, NVIDIA's display drivers when used with 32-bit systems that used physical memory addresses higher than 0xffff`ffff would fail. The system would boot, kinda, but the drivers truncated 64-bit physical addresses, causing them to overwrite essentially random bits of physical memory, with massive display corruption and instability.

Rather than dictate that 32-bit drivers should properly handle 64-bit physical addressing, Microsoft altered desktop versions of 32-bit Windows, starting with Windows XP Service Pack 2, so that any physical memory with an address higher than 0xffff`ffff would simply be off-limits. This meant that the drivers never had to cope with high memory addresses, and so that particular bug would never manifest itself.

The repercussion of this is that systems with modest amounts of memory (typically 3 GiB or more) and medium-to-high-end video cards generally cannot use all of their RAM when used with 32-bit desktop Windows. The video card memory is generally mapped, at least in part, to physical addresses below 0xffff`ffff, pushing some amount of RAM to physical addresses above 0xffff`ffff. This RAM is then off-limits to 32-bit desktop Windows.
avatar
pops117: Thank you for that bit of information! I didn't know the specifics about that particular issue, I often wondered how Windows allocated the available address space and video card memory space...
Yes; the blocks of memory that Windows allocates to talk to the graphics card are called "apertures". Windows XP didn't report them, so you were in the dark as to what was going on in high memory. Vista and Windows 7, which use the newer WDDM drivers, add them in to the total graphics memory they report (which leads to confusion when you see something like 576MiB reported for a 512MiB card).

The whole of the graphics card's VRAM is not mapped into high memory: a 1GB graphics card does not occupy 1GB of address space. The only occupied space is these apertures, which are reserved as needed (Vista used a lot of them; W7 is more conservative), but even so, they can get up to 1GB on a busy system.