4GB Memory Problems
- 29
- Add a Comment
http://live.pirillo.com/ - Windows Vista 32 bit "supports" up to 4GB of memory, but is 4GB of memory enough to run Windows Vista? Sometimes it’s more than enough.
If you’re running a 32 bit system, 4GB is your technical upper limit. Of course, Windows may not report that you have all 4GB available! Addressof has a good article on why this happens:
Here is a little piece to the total 64-bit puzzle that no-one seems to be telling anyone about. In that 4GB of address space, your video card memory is partitioned. Meaning if you have a 256MB video card, 256MB is consumed in the 4GB of total addressable space that a 32-bit processor can utilize. Here’s the problem; what if you have a video card that has 512MB, 640MB, 768MB? Yup, that will be mapped to the 4GB of addressable space. So if you had a 768MB NVidia 8800 card and 4GB of RAM, you’d lose 768MB of that 4GB of memory immediately to the device making it non-accessible "memory" for the OS. And it doesn’t stop there, all of your other devices that need to be communicated with (you know, anything with a driver) consumes part of this address space. So in my current 4GB worth of RAM system, 1.25GB worth of addressable space is consumed by devices.
Under a 64 bit system you can use 4GB of memory and much more - up to 16 exbibytes! And if we know Windows, it will use all 16 exbibytes ;)
From our YouTube video mirror (4GB RAM), the user known as cpmslave codes this response:
If you have more than 2GB the remainder is used by the OS instead of paging out the OS to disc when resources are low. The private process address space is still only 2GB and is reported as such. Some apps support the /3GB switch in boot.ini, but mainly server apps, not games. The /PAE switch lets you use 36 bit addressing for server versions of Windows, up to 64GB is available - AWE API anyone!
Is 4 GB of memory enough to run Windows Vista? Yes it is, according to Chris. What do you recommend?



29 Comments
Craig Terrian
May 24th, 2007
at 5:17am
4 GB oughta be enough for anybody.
Craig Terrian
May 24th, 2007
at 5:17am
4 GB oughta be enough for anybody.
John A Thomson
May 24th, 2007
at 9:30am
You need at least 2GB to run Vista well. Anything less will give suboptimal performance and problems in my limited experience with Vista!
Jerod Bennett
May 24th, 2007
at 11:18am
One thing is to remember that the BIOS of the machine also needs to understand the 64-bit OS. I just installed XP x64 on an older dell (3.4 GHz P4), but the bios still mapped into the 4GB address space, so I didn’t get to use all of the memory anyways.
Robert
May 24th, 2007
at 11:36am
KILLER TIP–THE WEEKLY QUESTION SENT IN FROM PEOPLE LIKE YOU!
From kim komando
I have a new Windows Vista computer. I have the Ultimate version, with 4 gigabytes of RAM. However, when I look under System, it shows only 2.8GB of RAM. What happened to the rest of my memory?
Mike in Bloomington, IN, listening on WGCL 1370 AM
Sorry to say, I’m afraid you’ve wasted your money. The rest of your memory is sitting idle. Windows can’t address it.
This is going to get a little technical. But it’s important for people who want to build killer machines. Many motherboards will hold a maximum of 4GB of RAM. But that doesn’t mean Windows can use it.
Let’s get the math out of the way first. Windows Vista comes in two basic versions—32-bit and 64-bit. The biggest difference is the amount of address space each can access. The former can access 4GB of address space. The 64-bit version of Vista Home Basic can access 8 terabytes of address space. The other four versions can access 16TB.
(Mathematically, a 64-bit operating system could access 16 exabytes of address space. That’s 4 billion times the 32-bit limit, give or take.
(All 32-bit operating systems have a 4GB limit on address space. It is imposed by mathematics. The problem is not limited to Windows Vista.)
OK, so let’s get back to your question. You have 4GB of memory, but Windows only sees 2.8GB. That’s because system RAM is only one thing vying for address space. Your machine has hardware that needs address space, too.
For instance, the video card is really hungry. According to Hewlett-Packard, a 256MB video card needs AT LEAST 256MB of address space. So let’s say you build a big-time gaming machine. You install a 512MB video card. Throw in your PCI-E bus system and numerous other pieces of hardware. You could eat up half the address space.
Those pieces of hardware get the first bite of address space. RAM gets the rest. So, in that case, the 32-bit version of Windows would only access about 2GB of RAM.
How’s that for a kick in the teeth? You spend a fortune for top-notch hardware, and inadvertently cheat yourself out of memory!
So, can you solve this problem with Windows’ 64-bit version? Maybe, maybe not. The machine itself has to provide more address space. And you need a 64-bit microprocessor.
The latter is no problem. Both Intel and AMD make gobs of 64-bit microprocessors. Before you buy such a machine, though, make certain the chipset supports the additional address space.
Let’s assume the machine offers tons of address space. In that case, all of the RAM would be fully utilized. But that’s only if the application you’re using (a game, for instance) is also 64-bit.
Unfortunately, almost all applications are 32-bit. That is certainly true of consumer applications. When they run on 64-bit Vista, they use emulation. This emulation is called Windows on Windows 64, or WoW64. And they can only access 2GB of RAM!
I’m afraid the consumer world just isn’t ready for 64-bit Vista. It makes more sense in the corporate world. There, mammoth programs might exceed 4GB in size. With the extra memory accessible in 64-bit operating systems, these programs can be loaded into RAM in their entirety. That makes them run much faster.
In fact, we looked at servers on Dell’s site. We found one option offering 32GB of RAM. That costs a mere $12,000 extra!
It looks to me like you’re snagged, no matter what you do. Online, I found people whose machines accessed as little as 2GB of RAM. These people had 4GB of RAM installed. Needless to say, they were hot under the collar. But, like you, they have no realistic solution.
RAM is cheap today, so lots of people are interested in maxing out. But when I bought my Vista Ultimate machines, I went for 2GB. Frankly, that’s a good number. It runs Vista very well. Much more, and I’d risk running out of address space.
No doubt, you hate wasting money. You might consider selling 1GB of your RAM.
I have more tips on RAM and memory on my site:
• Running low on virtual memory
• Adding more memory
• Find out what type of memory your computer needs
Have a great weekend and thank you for your support of my show and newsletters! I appreciate it!
Kim :)
which leads me to believe what they are saying that Vista is a glorified Me. as the debate gose on
John Howard Oxley
May 24th, 2007
at 2:27pm
Wow! Thanks to Chris Pirillo, I have saved myself some cash. I am in the middle of a mind-wracking project to build a replacement system for my main home work system, and I have already purchased a pair of NVIDIA 8800 GTXs. Whatever mobo I select will be server-grade, and capable of handing >4GB of memory — but since I will be running 32-bit WINDOWS for a couple of years longer, I was only planning to get 2 x 2GB sticks, which do have a mite of sticker shock to them.
Now the 2 graphics cards between them suck up a cool 1.5GB of addressable RAM — which means I would only get .5GB from the second stick — not worth it, really. So I will only get one stick now, and get the other(s) when I actually needed.
If I have to buy pairs of RAM, of course, I will have to weigh the cost advantages of 2 x 1GB against the fact that I would be disposing of these in a couple of years — but it is still good to know this going in.
marc klink
May 25th, 2007
at 10:24am
I would think the memory load on the processor by the video card could be mitigatd by the window on sets up in the bios. Using a 768 MB video card with a 512MB window probably has some performance hit, but should allow the use of the extra memory uncovered.
Jay J
May 26th, 2007
at 9:08am
First off id like to say YOUR WRONG!
let me explain in windows vista 32bit you can use more then 2GB RAM.
2GB installed RAM 1500MB cached. Page file 4000MB
3GB installed RAM 2500MB cached. Page file 5500MB
4GB=3.5 installed RAM 3000MB cached. Page file 7000MB
This is my testing on my own PC.
What 2GB limit?
It sure looks like it makes use of 4GB.
SDRNews SDR2007-05-31 - vidblogcast
June 1st, 2007
at 10:05am
Formats available: MPEG4 Video (.mp4), MP3 Audio (.mp3), Microsoft Video (.avi) Free Email Accounts 4GB Memory Problems Is it Safe to Leave my Computer on at Night? [IMG]
Dave B
June 4th, 2007
at 9:52am
Hi Chris,
This is a complex issue, and you are all correct in some form. Standardard 32-bit Intel/AMD processors actually support 36 (or more) addressing, using “processor address extensions” or PAE. Windows XP and Vista want to provide the application with a “flat” 32-bit (4GB) address space. So the next question would be where to put the drivers of the various devices. This is NOT a new issues. Anyone running large Windows Server 2003 systems have seen a “missing” 256MB to 512MB due to the PCI, PCI-X, and PCIe address spaces.
Here is a URL that discusses some of the core issues specifically with Vista. Microsoft suggest that you run 64-bit Vista on 64-bit systems, with 64 bit devices and drivers. The only combination that is certain to work
http://support.microsoft.com/kb/929605
You can get lucky with 32-bit Vista, if you happen to have a 64-bit capable motherboard, 64-bit capable devices, and a VERY GOOD quasi-32 bit driver. Finding VERY GOOD drivers for Vista devices is tough.
Vista 32-bit supports 64-bit base-address-registers (BARs) for configuring PCI and PCIe devices. This is a change over Windows XP (32-bit). In order to map a PCI/PCIe device above 4 GB, the device needs to be able to generate 64 bit addresses, and be set up to use them. Whether the device can get mapped above 4gb depends on the attributes that are assigned to the device during boot. If the devices’s attrributes (set by the driver) indicate that it can not work above 4GB, then Vista-32 assigns it below 4GB.
From the various comments on this thread, some users have devices and drivers that are capable of running over 4GB, and other users do not. Both sets of users are correct in their observations, based on different capabilites of the device/driver pair.
If you want the low-level technical description about what is going on, check this Microsoft document “Firmware Allocation of PCI Device Resources in Windows”. It covers all the recent Windows versions.
http://www.microsoft.com/whdc/system/bus/pci/PCI-rsc.mspx
Do you remember the Windows XP and Server 2003 features of Processor-address-extenstion (PAE) and Data-execute-procection (DEP)? Are you using them? Why not? DEP requires PAE mode behind the scenes, and PAE mode enables 36-bit addressing, 3-level page tables (vs. 2-level) and some 64-bit base address registers (BARs).
If you look up the discussions on PAE or DEP, you will find many mentions of incompatabilities with various drivers and other software running in these “advanced modes”. Well … If you want Vista to be able to map the device above 4GB, and these sorts of driver-centric advanced capabilities need to be there. Vista-32 effectively runs with PAE and DEP enabled by default. Given the lack of PAE-aware drivers under Windows XP/Server 2003, it is not surprising the small number of Vista-32 drivers that can live above 4GB. Under Windows XP/Server 2003, most of the PAE-aware drivers were for high performance server-centric devices, since it was typically the servers that needed to run with more than 4 GB of memory. Most servers have limited graphics, so the graphic memory mapping was not a major issue.
Hope this clarify the issue. It would be useful if graphic vendors indicated if they support working above 4GB under Vista-32.
Dave B
June 4th, 2007
at 9:52am
Hi Chris,
This is a complex issue, and you are all correct in some form. Standardard 32-bit Intel/AMD processors actually support 36 (or more) addressing, using “processor address extensions” or PAE. Windows XP and Vista want to provide the application with a “flat” 32-bit (4GB) address space. So the next question would be where to put the drivers of the various devices. This is NOT a new issues. Anyone running large Windows Server 2003 systems have seen a “missing” 256MB to 512MB due to the PCI, PCI-X, and PCIe address spaces.
Here is a URL that discusses some of the core issues specifically with Vista. Microsoft suggest that you run 64-bit Vista on 64-bit systems, with 64 bit devices and drivers. The only combination that is certain to work
http://support.microsoft.com/kb/929605
You can get lucky with 32-bit Vista, if you happen to have a 64-bit capable motherboard, 64-bit capable devices, and a VERY GOOD quasi-32 bit driver. Finding VERY GOOD drivers for Vista devices is tough.
Vista 32-bit supports 64-bit base-address-registers (BARs) for configuring PCI and PCIe devices. This is a change over Windows XP (32-bit). In order to map a PCI/PCIe device above 4 GB, the device needs to be able to generate 64 bit addresses, and be set up to use them. Whether the device can get mapped above 4gb depends on the attributes that are assigned to the device during boot. If the devices’s attrributes (set by the driver) indicate that it can not work above 4GB, then Vista-32 assigns it below 4GB.
From the various comments on this thread, some users have devices and drivers that are capable of running over 4GB, and other users do not. Both sets of users are correct in their observations, based on different capabilites of the device/driver pair.
If you want the low-level technical description about what is going on, check this Microsoft document “Firmware Allocation of PCI Device Resources in Windows”. It covers all the recent Windows versions.
http://www.microsoft.com/whdc/system/bus/pci/PCI-rsc.mspx
Do you remember the Windows XP and Server 2003 features of Processor-address-extenstion (PAE) and Data-execute-procection (DEP)? Are you using them? Why not? DEP requires PAE mode behind the scenes, and PAE mode enables 36-bit addressing, 3-level page tables (vs. 2-level) and some 64-bit base address registers (BARs).
If you look up the discussions on PAE or DEP, you will find many mentions of incompatabilities with various drivers and other software running in these “advanced modes”. Well … If you want Vista to be able to map the device above 4GB, and these sorts of driver-centric advanced capabilities need to be there. Vista-32 effectively runs with PAE and DEP enabled by default. Given the lack of PAE-aware drivers under Windows XP/Server 2003, it is not surprising the small number of Vista-32 drivers that can live above 4GB. Under Windows XP/Server 2003, most of the PAE-aware drivers were for high performance server-centric devices, since it was typically the servers that needed to run with more than 4 GB of memory. Most servers have limited graphics, so the graphic memory mapping was not a major issue.
Hope this clarify the issue. It would be useful if graphic vendors indicated if they support working above 4GB under Vista-32.
mike
August 18th, 2007
at 11:35am
I had a problem getting my vista x64 to boot after upgrading from 3 gig to 4 gig of ram. The issue lied in ****** Creative Alchemy drivers for my x-fi. After uninstalling them it works fo problem. Creative is really pissing off the community and ive had it with them and their crappy vista support.
mike
August 18th, 2007
at 11:35am
I had a problem getting my vista x64 to boot after upgrading from 3 gig to 4 gig of ram. The issue lied in ****** Creative Alchemy drivers for my x-fi. After uninstalling them it works fo problem. Creative is really pissing off the community and ive had it with them and their crappy vista support.
Dude79
August 30th, 2007
at 4:05am
Well Chris you bombed yourself in one of your uneducated rants about 2GB’s Quote: Chris dont install more then 2GB windows cant use more! Well lets see here my Windows XP 32 bit version. No PAE /3GB tricks it will dispaly and use 3.5GB when 4GB is installed. Lets say I have a current task that is indeed using 1.9GB ok and I need 500MB for windows do the math = 2.4GB. Now do you see how it comes in handy? Thats right Im not hitting the page file. 2GB per application and 1.5GB free for background task windows,antivirus,ect. How can you honestly tell people not to use more then 2GB? Everyone knows windows vista 32bit flys when you have 3 or 4GB installed. HP now sells 3GB 32bit computers and there is a reason for it! How will Chris answer? Thanks.
Chris Pirillo
August 30th, 2007
at 1:14pm
I didn’t bomb anythying, Dude79 - you need to understand what you’re doing before you open yourself up to problems: http://chris.pirillo.com/2007/08/30/32-bit-windows-and-4gb-of-ram/
Dude79
September 1st, 2007
at 4:49pm
You said dont use more than 2GB. In 32bit.
Is VISTA not faster with more than2GB?
3GB or even 3.50GB is faster than 2GB are you saying Im wrong and your right? Ok Chris are you going to tell HP on the phone not to install more than 2GB?
What about apple with the 3GB upgrade are you saying they are wrong also?
Think about it.
We are in a 32bit 3GB era.
Steve
September 4th, 2007
at 7:19am
I just listened to this after buying a new Dell with 4Gigs of RAM and Vista Business. The system only reports 4. Don’t you think Dell has a responsibility to let you know that the extra RAM is useless instead of implying that it will improve performance on the website when you by it. Here’s what they claim:
You did receive 4G of system memory. Vista reserves 1G of system memory to run it’s own services and to complete the required 512 of video memory it needs to function properly. The 3G you see under system information is what is available for other uses.
Since you received everything ordered and the system is functioning within parameters, a refund will not be an option.
I will be archiving this escalation at this time. However, if you do contact us again with additional information with respect to this issue, we will be more than happy to reopen the case for review. Please let me know if you have any further questions with respect to this issue.
I will be handling this case until we arrive at a solution to the issue. If you would reply to this email without changing the subject line, I will receive it.
jub
October 7th, 2007
at 6:57pm
Just been reading up here because ive just tried 4gb of ram in my xp pro 32bit system.It has 2gb normally but i borrowed my brother in laws 2gb of memory which is the same brand to try out before i bought some more.
Multiple apps ran smoother and some intensive games ran without stutter when there usually is stuttering.Quiting to desktop was very quick,instant even and overall things were just smoother.
Ok why not just get 3 gigs? well 4 gigs makes the pc run in dual channel mode which anyone knows is quite a bit faster (on my core 2 duo rig anyway) and the extra 2 gigs of ddr2 is cheap as hell atm ,£43 to be precise.Thats less than i spend on a night out and more than worth the extra performance for me.
Dauterive
October 9th, 2007
at 3:05pm
Jub! I can’t agree more with your comments. Frankly the technical stuff above is pointless. It really is that simple, more ram means more performance if needed. Excluding games and video conversion 2gb is fine in xp. Vista needs all the help it can get. How do I know? I run a pc shop and my team builds over 30 custom spec pc’s a week for all sorts of tasks. As for graphics card and page files, if you have 1gb of ram and a 768mb 8800 does vista not boot? I think not.
Merrick
October 18th, 2007
at 6:36am
I’ve read through the coments and tried to make sence of it in my head but couldnt so heres my current situation and my ramblings :)
I have a 8800GTS 640MB RAM and 4x 1GB chips. So going by the things above vista should show reduced memory, less than 4GB (or by going by Dell even less?? whats that all about).
Vista shows me as having 3326 MB which makes sence to me, 4gb -640MB. However, when i run Cruicals memory checking tool (very handy tool Crucial :) ) it tells me the new chips are only running at half speed, 512 per chip.
Now the BIOS says i have 4GB so I’m gussing Cruisal’s tool cant recognise unused memory?
Someone mentioned that although the memory apears to be missing Vista will actualy use it instead of the pagefile, did i understand that right?
So all in all, it may aprear to be missing but when the hard apps realy kick in (3x EVE Online clients at max settings running at one time for example) it will still help performance?
Merrick
October 18th, 2007
at 6:44am
Just a small addition. When Vista starts indexing my hard drive normaly goes a bit mental for about 10 mins after i boot up. Thats with 2GB
System still shows only 37% RAM usage but its doing all this funky stuff.
After i fitted another 2GB (now at 4GB) the system says 3GB actualy memory. The RAM use drops to 27% but the funny thing is theres less than half the normal activeity coming from the hard drive after Vista loads so I’m guessing, and this is pure guess, that what ever process are done as you log into vista, such as indexing, may be handled by the pagefile and as theres this whole 640MB of unaddressed memory sitting there not being uses its using that instead of the PF.
Is that possible? of have my mice jsut stopped making as much noise after I log in?
Talk nineteen to the dozen
December 22nd, 2007
at 10:50am
Popped it all into the main desktop. This brings it to 4 gigabytes of total main memory, however due to the 32 bit OS (Windows Vista), it’s only able to utilize a little over 3 gigabytes of it.This article explains why
tom
December 24th, 2007
at 1:28pm
if you have vista 64 bit and install the service pack vista sp1 rc v.668 the computer will see 4GB!
Pilot Brad’s Flying Blog
February 21st, 2008
at 7:53pm
HDD: 320GB * While I have 4GB of RAM installed, Windows Vista 32-bit recognizes it as only 3GB. I won’t go into why here, but you can read the official Microsoft explanation or perhaps amore down to earth explanationon Chris Pirillo’s site.
Hans
March 3rd, 2008
at 6:00am
OK so XP shows 2GB, the BIOS shows 4GB and Windows 2003 shows 4GB so I know the problem is XP and 2003 Enterprise 32Bit with PAE shows 4GB so why doesn’t the XP /PAE work ???? Same drivers same hardware WFT?
Bill
March 21st, 2008
at 11:55pm
Despite the Windows address space limitations, would it still make sense to use 4GB Ram on Windows XP Pro if one plans to create a Ram Disk? Can such a “vrtual” drive somehow take advantage of the “missing” space invisible to the operating system itself?
jew
May 20th, 2008
at 8:30pm
jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews jews
Ismail Jennai
August 22nd, 2008
at 4:32pm
im new to vista, i have vista basic 32-bit. and i have 4 gig of mem but they system only reads 2, do i have to get a diffrent version of vista to get all 4 gig, and is 8 gig possible
Ismail Jennai
August 22nd, 2008
at 4:32pm
im new to vista, i have vista basic 32-bit. and i have 4 gig of mem but they system only reads 2, do i have to get a diffrent version of vista to get all 4 gig, and is 8 gig possible