Memory Limits for Windows Releases

Expand
598 readers found this helpful (738 ratings - Rate this content)

Memory Limits for Windows Releases

This topic describes memory limits for supported Windows releases:

Limits on memory and address space vary by platform, operating system, and by whether the IMAGE_FILE_LARGE_ADDRESS_AWARE value of the LOADED_IMAGE structure and 4-gigabyte tuning (4GT) are in use. IMAGE_FILE_LARGE_ADDRESS_AWARE is set or cleared by using the /LARGEADDRESSAWARE linker option.

4-gigabyte tuning (4GT), also known as application memory tuning, or the /3GB switch, is a technology (only applicable to 32 bit systems) that alters the amount of virtual address space available to user mode applications. Enabling this technology reduces the overall size of the system virtual address space and therefore system resource maximums. For more information, see What is 4GT.

Limits on physical memory for 32-bit platforms also depend on the Physical Address Extension (PAE), which allows 32-bit Windows systems to use more than 4 GB of physical memory.

Memory and Address Space Limits

The following table specifies the limits on memory and address space for supported releases of Windows. Unless otherwise noted, the limits in this table apply to all supported releases.

Memory typeLimit in on X86Limit in 64-bit Windows

User-mode virtual address space for each 32-bit process

2 GB

Up to 3 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE and 4GT

2 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE cleared (default)

4 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE set

User-mode virtual address space for each 64-bit process

Not applicable

With IMAGE_FILE_LARGE_ADDRESS_AWARE set (default):

x64:  8 TB
Intel IPF:  7 TB

2 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE cleared

Kernel-mode virtual address space

2 GB

From 1 GB to a maximum of 2 GB with 4GT

8 TB

Paged pool

Limited by available kernel-mode virtual address space or the PagedPoolLimit registry key value.

Windows Vista and above:  Limited only by kernel mode virtual address space. Starting with Windows Vista with Service Pack 1 (SP1), the paged pool can also be limited by the PagedPoolLimit registry key value.
Windows Home Server and Windows Server 2003:  530 MB
Windows XP:  490 MB
Windows 2000:  350 MB

128 GB

Windows Server 2003 and Windows XP:  Up to 128 GB depending on configuration and RAM.
Windows 2000:  Not applicable

Nonpaged pool

Limited by available kernel-mode virtual address space, the NonPagedPoolLimit registry key value, or physical memory.

Windows Vista:  Limited only by kernel mode virtual address space and physical memory. Starting with Windows Vista with SP1, the nonpaged pool can also be limited by the NonPagedPoolLimit registry key value.
Windows Home Server, Windows Server 2003, and Windows XP/2000:  256 MB, or 128 MB with 4GT.

75% of RAM up to a maximum of 128 GB

Windows Vista:  40% of RAM up to a maximum of 128 GB.
Windows Server 2003 and Windows XP:  Up to 128 GB depending on configuration and RAM.
Windows 2000:  Not applicable

System cache virtual address space (physical size limited only by physical memory)

Limited by available kernel-mode virtual address space or the SystemCacheLimit registry key value.

Windows Vista:  Limited only by kernel mode virtual address space. Starting with Windows Vista with SP1, system cache virtual address space can also be limited by the SystemCacheLimit registry key value.
Windows Home Server, Windows Server 2003, and Windows XP/2000:  860 MB with LargeSystemCache registry key set and without 4GT; up to 448 MB with 4GT.

Always 1 TB regardless of physical RAM

Windows Server 2003 and Windows XP:  Up to 1 TB depending on configuration and RAM.
Windows 2000:  Not applicable

 

Physical Memory Limits: Windows 7

The following table specifies the limits on physical memory for Windows 7.

VersionLimit on X86Limit on X64
Windows 7 Ultimate

4 GB

192 GB

Windows 7 Enterprise

4 GB

192 GB

Windows 7 Professional

4 GB

192 GB

Windows 7 Home Premium

4 GB

16 GB

Windows 7 Home Basic

4 GB

8 GB

Windows 7 Starter

2 GB

 

Physical Memory Limits: Windows Server 2008 R2

The following table specifies the limits on physical memory for Windows Server 2008 R2. Windows Server 2008 R2 is available only in 64-bit editions.

VersionLimit on X64Limit on IA64
Windows Server 2008 R2 Datacenter

2 TB

Windows Server 2008 R2 Enterprise

2 TB

Windows Server 2008 R2 for Itanium-Based Systems

2 TB

Windows Server 2008 R2 Foundation

8 GB

Windows Server 2008 R2 Standard

32 GB

Windows HPC Server 2008 R2

128 GB

Windows Web Server 2008 R2

32 GB

 

Physical Memory Limits: Windows Server 2008

The following table specifies the limits on physical memory for Windows Server 2008. Limits greater than 4 GB for 32-bit Windows assume that PAE is enabled.

VersionLimit on X86Limit on X64Limit on IA64
Windows Server 2008 Datacenter

64 GB

1 TB

Windows Server 2008 Enterprise

64 GB

1 TB

Windows Server 2008 HPC Edition

128 GB

Windows Server 2008 Standard

4 GB

32 GB

Windows Server 2008 for Itanium-Based Systems

2 TB

Windows Small Business Server 2008

4 GB

32 GB

Windows Web Server 2008

4 GB

32 GB

 

Physical Memory Limits: Windows Vista

The following table specifies the limits on physical memory for Windows Vista.

VersionLimit on X86Limit on X64
Windows Vista Ultimate

4 GB

128 GB

Windows Vista Enterprise

4 GB

128 GB

Windows Vista Business

4 GB

128 GB

Windows Vista Home Premium

4 GB

16 GB

Windows Vista Home Basic

4 GB

8 GB

Windows Vista Starter

1 GB

 

Physical Memory Limits: Windows Home Server

Windows Home Server is available only in a 32-bit edition. The physical memory limit is 4 GB.

Physical Memory Limits: Windows Server 2003 R2

The following table specifies the limits on physical memory for Windows Server 2003 R2. Limits over 4 GB for 32-bit Windows assume that PAE is enabled.

VersionLimit on X86Limit on X64

Windows Server 2003 R2 Datacenter Edition

64 GB

(16 GB with 4GT)

1 TB

Windows Server 2003 R2 Enterprise Edition

64 GB

(16 GB with 4GT)

1 TB

Windows Server 2003 R2 Standard Edition

4 GB

32 GB

 

Physical Memory Limits: Windows Server 2003 with Service Pack 2 (SP2)

The following table specifies the limits on physical memory for Windows Server 2003 with SP2. Limits over 4 GB for 32-bit Windows assume that PAE is enabled.

VersionLimit on X86Limit on X64Limit on IA64

Windows Server 2003 with Service Pack 2 (SP2), Datacenter Edition

64 GB

(16 GB with 4GT)

1 TB

2 TB

Windows Server 2003 with Service Pack 2 (SP2), Enterprise Edition

64 GB

1 TB

2 TB

Windows Server 2003 with Service Pack 2 (SP2), Standard Edition

4 GB

32 GB

 

Physical Memory Limits: Windows Server 2003 with Service Pack 1 (SP1)

The following table specifies the limits on physical memory for Windows Server 2003 with SP1. Limits over 4 GB for 32-bit Windows assume that PAE is enabled.

VersionLimit on X86Limit on X64Limit on IA64

Windows Server 2003 with Service Pack 1 (SP1), Datacenter Edition

64 GB

(16 GB with 4GT)

X64 1 TB

1 TB

Windows Server 2003 with Service Pack 1 (SP1), Enterprise Edition

64 GB

(16 GB with 4GT)

X64 1 TB

1 TB

Windows Server 2003 with Service Pack 1 (SP1), Standard Edition

4 GB

32 GB

 

Physical Memory Limits: Windows Server 2003

The following table specifies the limits on physical memory for Windows Server 2003. Limits over 4 GB for 32-bit Windows assume that PAE is enabled.

VersionLimit on X86Limit on IA64

Windows Server 2003, Datacenter Edition

64 GB

(16 GB with 4GT)

512 GB

Windows Server 2003, Enterprise Edition

64 GB

(16 GB with 4GT)

512 GB

Windows Server 2003, Standard Edition

4 GB

Windows Server 2003, Web Edition

2 GB

Windows Small Business Server 2003

4 GB

Windows Compute Cluster Server 2003

32 GB

Windows Storage Server 2003, Enterprise Edition

8 GB

Windows Storage Server 2003

4 GB

 

Physical Memory Limits: Windows XP

The following table specifies the limits on physical memory for Windows XP.

VersionLimit on X86Limit on X64Limit on IA64
Windows XP

4 GB

128 GB

128 GB (not supported)

Windows XP Starter Edition

512 MB

 

Physical Memory Limits: Windows 2000

The following table specifies the limits on physical memory for Windows 2000.

VersionLimit on X86
Windows 2000 Professional

4 GB

Windows 2000 Server

4 GB

Windows 2000 Advanced Server

8 GB

Windows 2000 Datacenter Server

32 GB

 

Physical Memory Limits: Windows Embedded

The following table specifies the limits on physical memory for Windows Embedded.

VersionLimit on X86Limit on X64

Windows XP Embedded

4 GB

Windows Embedded Standard 2009

4 GB

Windows Embedded Standard 7

4 GB

192 GB

 

How graphics cards and other devices affect memory limits

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.

Related topics

4-Gigabyte Tuning
IMAGE_FILE_LARGE_ADDRESS_AWARE
Physical Address Extension

 

 

Send comments about this topic to Microsoft

Build date: 9/7/2011

Did you find this helpful?
(2000 characters remaining)
By clicking Submit you accept the Microsoft Service Agreement
Community Additions
ADD
Windows 7 Memory limit / 2008 R2 not for 32 bit
I find myself in need of Windows 7 or greater 32 bit with more than 4GB ram. x64 fails due to backwards comparability (a few old programs) and Windows Vista failed an accessibility test that is important to me (which 7 passed).

[tfl] In general, you can not have a 32-bit OS with more than 4GB of RAM. My advice: accept the inevitable and move to 64-bit OSs.
9/16/2011
4Gb is not acessable on windows 7 @ 32bit (x86)
There is PCI hole for MMIO between 3 and 4 gb which size differs from 512 to 1024Mb depends on installed pci and video cards. So part or RAM is "shadowed" by MMIO.$0 $0Some BIOS may remap MMIO beyond the 4Gb (to be accessed from 32bit mode with PAE) but windows 7 (and other "desktop systems" from Microsoft) do not support it because (according to Russsinovich) they do not want drivers to work with 64bit pointers (which is required to address memory > 4Gb). $0$0 $0 $0Please fix your documentation. It is tehcnically impossible to force windows 7 32bits to access 4Gb ram. $0
8/12/2011
windows new release
windows new release
7/14/2011
Total memory limit windows7 64x
Total memory limit windows7 64x
7/14/2011
overview of memory sizes

i've updated my overview of the memory sizes of windows using the information above

it can be retrieved via:

http://roadbiker.student.utwente.nl/Memory_sizes_of_Windows_OS.doc

6/13/2011
Windows 7 Home Premium 64bit 16GB Memory Limit - RAM or VRAM + RAM?
I found out yesterday something that is not listed in any online store selling Windows 7 (even Microsoft) or any comparison charts. Windows 7 Home Premium 64bit has a memory limit of 16GB, Professional and Ultimate have 192GB. I would have liked to have known this prior to makin purchasing decision. Comparison charts at Microsoft store have no mention of memory limits, anyway....

This 'Physical Memory' limit of 16GB, does that also include VRAM? If I install 4 sticks of 4GB Ram, and have 2 x 1.5GB Video Cards (as home enthusiasts may have, probably more-so than a professional guy in an office using Excel), does this count as 16GB physical RAM (4 x 4GB RAM) or 19GB physical RAM (4 x 4GB RAM + 2 x 1.5GB VRAM)?

Thanks.

Answer (Gaidheal):

No, as I mentioned in my comment below, no video card is going to map all of its own physical memory into your system's virtual address space and the installed physical system memory is nothing at all to do with any physical memory on an expansion card.  In other words, just as you don't see memory from soundcards and network adapters (both do have memory, of course) you don't see the memory belonging to your video card, except those ports it explicitly maps.
6/6/2011
A lot of confusion here, especially in what I assume are professional users...
Okay, time to spear a few myths.  The 4 GiB physical memory limit on 32 bit Windows is a licensing limitation not a hardware limitation; in most cases it is not even a software limitation and the OS version has code capable of enumerating memory beyond 4 GiB but Microsoft choose not to enable it on your licence.

PAE stands for Physical Address Extension, is not a 'Microsoft thing' and has nothing to do with virtual memory or paging; the hint is in the name.  It's a chipset standard that means there are more address lines available, increasing the amount of memory that can be installed on the system.  Windows needed a patch to make use of the increased physical address space and so properly enumerate all system memory and handle the processors which can use these 'extra' address lines.

Virtual address =/= physical address.  Your virtual address space is theoretically unlimited, you simply need to use pointers large enough to handle the maximum desired value; a 32 bit pointer allows a virtual address space of 4 GiB (Gibibyte - 2^30) {this is where the confusion comes in, probably} for example, a 64 bit pointer allows 16 EiB (Exbibyte - 2^60).  The physical memory that this will be mapped onto is utterly irrelevant - it could be a hard disk, flash disk or SDRAM installed as system memory.

Your expansion cards, whether video cards, network adaptors, sound cards or anything else are also utterly irrelevant to your installed physical memory;  their onboard memory is visible only to them and nothing whatsoever to do with your 'RAM' (physical system memory).  Of course, they can make this memory visible to other device by mapping it into the virtual address space and various ports will also take up some of the address space BUT no video card I know of (and I use the 'big boys') maps anything approaching its entire onboard physical memory into the virtual address space.  Installing a "1 GB video card" will not take 1 GiB away from your available virtual memory.

http://www.geoffchappell.com/viewer.htm?doc=notes/windows/license/memory.htm may be of some interest to readers and covers some of what I have stated here.
6/6/2011
Very Strange: Server edition is less powerfull than the client edition
Windows 7 Pro: 192 Gb - Windows 2008R2 standard (= windows 7 server): 32 Gb, so the client version can address 6 times the memory of the server version
Windows Vista Business x64: 128 Gb - Windows 2008 x64 standard (= windows vista server): 32 Gb, so the client version can address 4 times the memory of the server version

Strange; when you pay more, you get less?
A server should alway be equal or more powerfull than a client!
 
So please, releas a fix that changes max memory of the server versions to (minimal) match the max memory of the client versions.
5/31/2011
Windows 7 Ultimate x64 cant use more then 3gb of RAM
Hardware drivers need to use memory too. Your requirement to make all RAM usable for software requires a machine with no hardware, I don't think Windows can install on such a machine as it cannot have hard disk, monitor mouse or keyboard.

This web site is for software developers to look up information that help them to write software, so you are not going to the traffic that Microsoft forums usually get. There just way too many pages in this web site here (millions of pages) so traffic to individual pages are minimal. I don't suggest anyone to ask question here and expect timely answers. 

Imagine someone who need urgent help in writting software, land on a MSDN page during research, somehow decided to answer your question instead of working on his/hers own problem... how often does that happen?

Ultimate OS wich should support more then 3gbs of RAM but it doesnt.
I have 2x 2gbs od ddr2 RAM, but only 3.12gb is usable, 897mb is hardware reserved.
There is nothing I can do to make all of RAM usable. I tried every tweak but nothing helped me.
I think that M$ should fix this, I did not buy x64 version to have only 3gbs of RAM.

Windows 7 Ultimate x64 cant use more then 3gb of RAM
I have Windows 7 x64 Ultimate OS wich should support more then 3gbs of RAM but it doesnt.
I have 2x 2gbs od ddr2 RAM, but only 3.12gb is usable, 897mb is hardware reserved.
There is nothing I can do to make all of RAM usable. I tried every tweak but nothing helped me.
I think that M$ should fix this, I did not buy x64 version to have only 3gbs of RAM.
4/29/2011
Enable PAE for full use of 4GB RAM
http://...

The above link describes how to set up PAE (Physical Address Extension) on Vista 32 bits (It can be done in other 32 bits Windows), so that it can make use of 4GB RAM, not just ~3.5GB.

To authors of this message: Please, read how PAE works.
3/11/2011
Memory Limits
Shouldn't the chipset dictate how much memory the system can handle, I believe the current limit is 2.81474977 × 1014 byte of memory.   which is 2^48,  at least this is what Linux currently supports, i would think  a big complex, expensive system like Windows would at least match the world best Operating System.
2/10/2011
Server with a commercial memory limit ??

We have bought a Windows 2008 R2 64bit standard edition..  our machine have a memory capacity of 36 GB..

But this server only can handle 32 GB !?

And a client OS alike Win7 pro  192 GB??

Why / what is this?

10/14/2010
Server with a commercial memory limit ??
We have bought a Windows 2008 R2 64bit standard edition..  our machine have a memory capacity of 36 GB..

But this server only can handle 32 GB !?

And a client OS alike Win7 pro  192 GB??



Why / what is this?

10/14/2010
Facts
  • A 32 bit OS can only use 4GB of memory total, that means if you have 4GB of ram and your graphic card has 1GB of ram, you have a total of 5GB of memory.
  • Out of that 5GB of memory, you can only use 4GB total. 1GB the graphic card will take up, so now the 32bit OS can only use 3GB. 
  • Enabling PAE, will limit to the OS to 2GB total. What PAE does is dedicate 2GB to OS and the other 2GB to anything other then the OS. Apparently some people don't understand how PAE works and think that some how it can magically make a 32bit XP use more then 4GB, which is impossible, so after noticing my explanation is not getting through, I thought a visual from MS itself might help sink it in, you can see it here: http://www.microsoft.com/whdc/system/platform/server/PAE/PAEdrv.mspx     
    • The 'fact' above is the perfect example of this misunderstanding. PAE has nothing to do with the user and kernel pool being seperated.
    • Many confuse virtual memory with physical memory. All requests for memory by applications; that is running processes, such as explorer.exe, wmplayer.exe, dwm.exe, iexplore.exe, etc; are furfilled using virtual memory. Virtual memory is just an abstraction which includes physical memory and your pagefile(s). Yes, virtual memory includes physical memory!
  • Vista 32bit can see only 3.5GB of ram total. The new sp1 only reports how much memory you have installed, not how much memory you can use.
Whomever wrote this ^.

You should actually read the article you posted a link to.  I quote: 
"

Introduction

PAE is an Intel-provided memory address extension that enables support of greater than 4 GB of physical memory for most 32-bit (IA-32) Intel Pentium Pro and later platforms. This article provides information to help device driver developers implement Windows drivers that support PAE."

Sounds to me like your FACTS, might not be FACTS? 

AH! I was going to post these 'inconvenient facts' myself. the 'PAE' (please READ about your acronyms, people!) means 'Physical Address Extension'
Why is that important? the last word, really. 'Extension'. this does NOT enable you to use more than 4GB ram. Face facts people. This is a form of some memory management features, 
more than anything else. This isn't even a 'Microsoft thing'. it's a 32-bit computing limitation. the 'Microsoft thing' part comes in because they've somehow given people
the idea that using this boot flag can somehow magically let your computer address more ram than any 32-bit OS is capable of.
I blame their marketing department. Stupid buggers.
And yes, there's a page on microsoft that DOES say that it allows you to use more than 4GB ram. THAT's where people got this idea.

If you want and bought more than 4GB of ram. suck it up and get a real 64-bit OS already.
You could afford the RAM, so go do it. If it's the cost of windows 64-bit that's stopping you,
go download the 64-bit version of ubuntu or something it's free. And if you hate MS, you should want to do that anyway.
But above all, quit ranting. MS isn't going to 'fix' anything because the users rant. This should be painfully obvious to us all by now.
I mean jesus, just look at IIS if you hope that they will one day 'fix' thier OS....

This isn't even a 'Microsoft thing'. ?

But yes, this is a Microsoft thing. 
Linux PAE kernel supports 64 GB RAM, because how old 32 bit CPU-s work, and address the memory.
Intel 32 bit CPU-s (and AMD as well) uses Segment:Index addressing where the Segment is 20 bit wide, and the Index is 32 bit wide. However this doesn't mean an 56 bit wide memory address, just 36 bit, and as a result a single byte in memory can be addressed several ways.
Example 
- segment:index: 0000:000000001 this is the second byte in the memory (technically, the :00000000 is the first)
- segment:index: 0000:000000010 this is the 17 byte in the memory, however this can alternatively be addressed by this: 0001:00000000
This is because the Segment part overlaps the Index part. Increasing the Segment part by 1 can be an alternative $10 (or decimal 16) increase in the Index side. 
It is just the Windows operating system, that runs in protected mode where the Segment is not usable (they are pointers) and addresses the whole memory only by Index, which is a maximum of 4 GB.
The total addressable memory is exactly 4 GB multiplied by that Segment-Index relation - which is 16 - therefore it is 64 GB. 
You can do the math for the 64 bit CPU, knowing that Segment size did not change (16 bit), but Index was increased to 64 bit, so the total addressable space is 2^68 = 256 exabytes.


8/6/2010
set maximum memory win 7 x64
Check the advanced boot options.

Go to Start, in the search bar type msconfig and press enter
System Configuration window will open on the screen
Click on tab named "boot"
Click on "Advanced Options" and uncheck the box for "Maximum Memory"

8/1/2010
12 GB (7.99 GB usable)
12 GB (7.99 usable) is displayed under computer properties / system / installed memory (RAM). How do i get the all 12 GB working??

Specs.-OS Windows 7 Home Premium 64 bit
Intel i7 950
evga x58 sli classified
12 GB corsair DDR3 xms3 platinum series


8/1/2010
Just my two cents.
Fact. The only reason why the x32 version of Windows will not see anything past 3.1gig (in some versions) is not a hardware issue. The majority of x32 Intel processors beginning with the Pentium PRO in 1995 have been able to able to support the addressing for up to 64gig of RAM. And while the limit for 32 bits is calculated to 2 to the 32nd (32bit) power or 4 gig, 2 to the 16th (16bit) power is 64k. 16bit MSDOS was designed to use 640k of RAM on an old 8086. A little higher than the "limitation" indicated by math.

[Edit: the 8086 had a 20 bit address bus or 1GB addressable RAM limit, but the later 80x86 families could address up to 32 bits in different modes. However the 8086 CPU was always 16bit. Debate also raged at the time over whether the 80x86 families were 16, 20, 24 or 32 bit processors. But the 1Gb 8086 vs 640K MSDOS stupid limit became infamous when Bill Gates stupidly asked in defence of his stupidity "Who needs more than 640K of memory?" (DSR)]

Opinion. The reason x32 Windows will not recognize anything past that is probably market based. 64bit processors came out a couple years after Windows XP. The first true (no I don't consider XP pro x64 version a true 64bit operating system) 64bit operating system to come from MS was Vista. Everyone knows how well that went. People were downgrading, or doing anything they could to stay away from that mess. Businesses couldn't initially justify the cost of the machines to run Vista acceptably amongst other things (reverse compatibility in hardware and software, reliability issues, hardware support, ect) as indicated by Vista's paltry 18% market share at the launch of 7. In order to sell more copies of Vista and throw some business down their partners way they came up with some pretty lame (IMO) excuses to get people to buy new stuff. Thanks to Vistas horrendous overhead the price of memory has dropped creating this little conundrum.

And while I have my opinions as to why Vista was such a train wreck. It has definitely become more refined over time. Windows 7 is hands down, again in my own opinion, the best OS Microsoft has launched to date. And there are definite advantages to 64bit processing. A majority of the software is still written for 32 bit processing negating most of the advantage you would get with using a 64bit operating system. Besides, doesn't seem to matter which computer or what Microsoft OS I jump onto. The closer I get to utilizing 2 gig of RAM, the crappier the computer seems to run. Kind of like a glass wall there.
3/29/2010
Doesn't include Windows 2008 & Windows 7 info
This document is out of date as it doesn't include the limitations of Windows 2008 and Windows 7. For example, nonpaged pool, page pool and system cache are not listed.
2/1/2010
64/32 bit uestion for DAW
hello all. thanks for these very useful numbers. now me being a noob, i have a question since i dont really understand the per process thing.

so i wwork with cubase 5 64 bit version on win 7 ulimate 64 bit. no let say i add a kontakt (sampler) 32 bit. cubase 5 is then a host for this konakt. so my question is since it says per process, does kontakt have 4 gb ram and cubase has another 4 gb of ram? or how do i have to understand this per process?


thank you
1/22/2010
Confusion about kernel memory limits and PAE?
There seems to be some confusion about memory limits for the kernel and each process on 32-bit systems. I have written several articles that explain all that (and PAE, by the way) in great detail:

http://blogs.sepago.de/helge/2008/01/23/windows-x64-all-the-same-yet-very-different-part-2/

http://blogs.sepago.de/helge/2008/05/25/x64-my-terminal-servers-run-just-fine-with-32-bits-and-81216-gb-ram/

8/20/2009
x64 Client Maximum 128GB limit is not fact.
But, fact in the few past.
If talking only by design、 even XP x64 can treats 32TB.
2 socket hardware, such as Opteron 2000 number processor platform had maximum memory 128GB.
Microsoft says support that only what it was possible to prove.

And now, Xeon 5500 number processor platform can support maximum up to 144GB.
Microsoft will do the proof examination of 144GB in the near future.
7/24/2009
64Bit CPU/32Bit application Which operating system will provide maximum memory
I need to select an operating system for a server that runs on Xeon 64Bit (5080) platform. I have an application that needs as much memory as possible. Which operating system version setup will provide the maximum memory to this 32 bit application?
6/24/2009
Facts in error

"Apparently some people don't understand how PAE works and think that some how it can magically make a 32bit XP use more then 4GB, which is impossible, so after noticing my explanation is not getting through, I thought a visual from MS itself might help sink it in, you can see it here: http://www.microsoft.com/whdc/system/platform/server/PAE/PAEdrv.mspx"


I also mistakenly thought a 32bit operating system could only use 4GB, having only 32 address bits to work with. But as you can see from the tables above, 32bit Windows Server 2008 can use up to 64GB of physical memory. Turning on the PAE feature modifies the virtual address mapping used by the processor hardware. There is a good explanation on Wikipedia:
http://en.wikipedia.org/wiki/Physical_Address_Extension

Very basically, each process is still limited to 4GB because of the 32bit addresses, but the OS can use a processor control register to map that 4GB space above the 4GB. So process "A" might have it's 4GB virtual address space start in physical ram at 8GB, process "B" at 12GB, etc.

Many people will doubt this because of their personal experience with Microsoft 32bit desktop operating systems. Microsoft has specifically limited the desktops to 4GB for driver compatibility reasons.

Correction, read my facts again and you will see I specifically said "XP 32 bit", second I point to ms's own site and you take us to wiki which anybody can edit? since when is wiki's info more reliable then ms's own site when we discussing ms's OS? lol

In short XP 32-bit can't see more then 4GB of ram total no matter what you do, and its clearly stated here by MS:http://www.microsoft.com/whdc/system/platform/server/PAE/PAEdrv.mspx

yes other 32-bit OS-es can use more then 4GB of ram but not XP 32-bit

6/9/2009
Answers

"I running windwos Vista 64-bit with 8-GB of ram. Most of my applications are 32-bit applications. How much RAM can VISTA dedicates to 32-bit application?"

64 bit editions of Windows can only attribute a total of 4 GiB of RAM to any single 32 bit virtual memory instance (or application), regardless of your total RAM. The reason is simple, 64 bit editions of Desktop Windows run on the x86-64 architecture, which is a processor architecture capable of running both 64 and 32 bit instructions, limiting 32 bit instructions (or applications) to what 32 bit limits them to, thus, 4 GiB of RAM.

Intel and AMD's specification of PAE does support the x86-64 architecture but the software layer of Microsoft's PAE (the API), called AWE, is not supported on 64 bit editions of Windows, so Windows Vista 64 bit cannot attribute more than 4 GiB of RAM for a 32 bit application.

In fact, true 64 bit architectures like the Intel Itanium processor do not support 32 bit applications. The only reason 32 bit applications work on 64 bit editions of desktop Windows is because the very architecture at its core, called x86-64 (often erroneously shortened to x64), is a hybrid architecture capable of running both 32 bit and 64 bit instructions.

It's also the reason why drivers may not work in 32 bit, but applications will, on Windows Vista 64 bit. The Windows Vista 64 bit kernel is written in 64 bit, and thus, drivers must also be written in 64 bit. If Microsoft would have made the kernel in 32 bit, expanded support would have had to rely on PAE, but drivers wouldn't have had to be re-written. In fact, Apple used that strategy with Mac OS X's transition to 64 bit processors and only its future Snow Leopard will have its kernel in 64 bit.



"I also mistakenly thought a 32bit operating system could only use 4GB, having only 32 address bits to work with. But as you can see from the tables above, 32bit Windows Server 2008 can use up to 64GB of physical memory."

Note however that Windows Server 2008 32 bit uses PAE to achieve this.



"The limit for 64-bit XP is given as 128 GB, while on the support site, http://support.microsoft.com/kb/283247/en-us, it is given as 16 GB!
What is correct, 16 GB or 128 GB?"


Short answer is 128 GiB of RAM.
While Windows XP Pro 64 bit can theoretically support 128 GiB of RAM, driver issues, lack of motherboard support and PAE's Intel technical spec limit to 64 GiB can limit this. Very few 32 bit systems will be built to handle 128 GiB of RAM as the use of a 64 bit operating system becomes much more advantageous in this situation.


I have an article on my blog, Pacoup.com, but you'll have to find it yourself as I cannot link to my own articles on MSDN.

5/27/2009
XP / Vista x86

WROTE:

XP and Vista can only truly manage ~3GB of Physical RAM. 4GB is misleading.

Quote:

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".

QUOTE: PP

Xp and Vista can truly manage ~4GB of physical RAM

5/6/2009
Memory Limits
Well, that's not logical - 64-bit Vista Business can have up to 128GB RAM, while 64-bit Windows Server 2008 Standard can only have 32GB. Standard Edition is expensive enough to justify increasing the limit to 128GB in my opinion. Why should buying the next version up, Enterprise Edition, allow a 64-increase in memory (up to 2TB!) - unless Standard Edition is being gradually phased out? Hopefully this will be done with Windows Server 2008 Service Pack 1? I can understand Web Edition being limited to just 32GB though.

That said, most of the memory limits make sound sense.
5/6/2009
How much windows VISTA 64-bit dedicates to a 32-bit application!
I running windwos Vista 64-bit with 8-GB of ram. Most of my applications are 32-bit applications. How much RAM can VISTA dedicates to 32-bit application?

cs

2/27/2009
Conflicting information about 64-bit XP limit (inconsistent with KB 283247)

The limit for 64-bit XP is given as 128 GB, while on the support site, http://support.microsoft.com/kb/283247/en-us, it is given as 16 GB!

What is correct, 16 GB or 128 GB?

Some customers have been reported problems with running 64-bit XP on 32 GB RAM. Can you clarify if 32 Gb RAM is supported and if so, what was the purpose of information in KB 283247

11/3/2008
Windows 2003 x64

There was a Windows 2003 x64 verison i.e. NON R2 so why does it list this as Not applicable ? Should be 32gb for x64 same as R2 version?

8/22/2008