• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Windows 32-bit. Memory size limits, with virtual memory and pagefile

Joined
Aug 30, 2006
Messages
6,377 (1.53/day)
Likes
984
System Name ICE-QUAD // ICE-CRUNCH
Processor Q6600 // 2x Xeon 5472
Memory 2GB DDR // 8GB FB-DIMM
Video Card(s) HD3850-AGP // FireGL 3400
Display(s) 2 x Samsung 204Ts = 3200x1200
Audio Device(s) Audigy 2
Software Windows Server 2003 R2 as a Workstation now migrated to W10 with regrets.
#1
OK, so we know that Win 32-bit normally uses only 2GB. With the /3GB switch, it can use 3GB. The address space is limited to 4GB in Win32, but the range 3-4GB is typically not available since this is the i/o area (memory mapping for BIOS, PCIe, PCI, AGP devices, etc), unless you have a mainboard that can do shadow memory swapping, the 3-4GB area (and physical RAM id you bought it), is lost.

So the questions are:

Q1. What happens if you are fully loaded with memory and you extend the Virtual Memory (Pagefile.sys). Are you still stuck with the 32-bit address boundary, ie. 4GB? Or does memory break the 4GB boundary (albeit limited to 3GB for any ONE application).

Q2. If adding a SSD or RAMDISK (ala gigabate i-RAM), are we able to use this effectively as a swapdrive for pagefile, as an extremely fast virtual memory area, or, will it add no value, since Win32 cant use it? That would therefore leave the SSD and RAMDISK for temp files, (some speedup), but not for virtual memory performance gains.

Please no answers about /PAE. I'm not interested in Datacentre and Enterprise versions of Windows. http://support.microsoft.com/kb/283037
 
Joined
Nov 8, 2006
Messages
5,052 (1.24/day)
Likes
540
Location
Manchester, United Kingdom
Processor AMD FX 8320 @ 4GHz
Motherboard Gigabyte GA-990FXA-UD5 rev1
Cooling Corsair H70
Memory 4 x 4GB DDR3 Ripjawz 1600Mhz
Video Card(s) Sapphire Vapor-X AMD R9 280X
Storage 1 x 500GB Samsung Evo 850, 1 x 500GB Vrap Data Drive, 3 x 2TB Seagate, 1 x 1TB Samsung F1
Display(s) 3 x DGM IPS-2402WDH
Case Coolermaster HAF X
Audio Device(s) Onboard
Power Supply Coolermaster 1000W Silent Pro M
Mouse Logitech G502
Keyboard Logitech G510
Software Windows 10 Pro x64
#2
1. I have always been under the impression that virtual memory does not in fact contribute to system memory, as I have in the past run with 6-8Gb of memory seen in Task manager on XP x86.

I thought that Virtual Memory was more like a backup pool that Windows used to off-load stuff it didn't have space for in it's main memory.

Could be wrong though.

2. No idea.
 
Joined
Aug 30, 2006
Messages
6,377 (1.53/day)
Likes
984
System Name ICE-QUAD // ICE-CRUNCH
Processor Q6600 // 2x Xeon 5472
Memory 2GB DDR // 8GB FB-DIMM
Video Card(s) HD3850-AGP // FireGL 3400
Display(s) 2 x Samsung 204Ts = 3200x1200
Audio Device(s) Audigy 2
Software Windows Server 2003 R2 as a Workstation now migrated to W10 with regrets.
#3
OK. Seems like I'm still learning about Win architecture.

http://support.microsoft.com/?kbid=294418
http://members.shaw.ca/bsanders/WindowsGeneralWeb/RAMVirtualMemoryPageFileEtc.htm

So, virtual memory is limited to 4GB. It is the maximum amount of memory that can be "operating" at one time. It is typically 2GB for the kernel and 2GB max for a single application.
Whether you have 1GB, 2GB, 3GB or 4GB of physical RAM, the "virtual memory" cannot be more than 4GB. The only difference between "virtual" and system memory is that "virtual" can be more than system by using disk space.

I think there is a big terminology comfusion (and inconsistency) with the term "virtual memory". Be careful when using it, or interpretting comments, because its meaning seems to change between virtual memory as described by http://support.microsoft.com/?kbid=294418, and paged memory, as in pagefile.sys

The pagefile is something else. Firstly, it makes up any gap between physical RAM and the virtual RAM. It also allows MULTIPLE virtual memories. This means that even though ONE application is limited to 2GB, it is possible to run multiple applications, each with a max of 2GB.

If you are multitasking, then a bigger pagefile lets you do more. If you run only ONE application, and have 4GB of system ram, then the pagefile does NOTHING for you. (That one application).

There are two switches we often hear about. The /3GB and /PAE. The /3GB switch lets you have an application space as big as 3GB, but it reduces the kernel from 2GB to 1GB. For single application uses, like desktop photoshop etc, it is a help. For multitasking, esp. server services like terminal services, it is a disaster. The smaller 1GB kernel will half the number of connections it can manage. The /PAE switch allows the use of additional paged addressing, so that system memory can be bigger. However, that SAME 2GB kernel, 2GB application limit exists. It just that now, additional 2GB applications can reside in physical memory rather than on the pagefile.

So, the best answers I can give to my original questions are:

Q1. A= Yes, still stuck with 4GB boundary. Actually, 2GB kernel and 2GB application, unless using /3GB.

Q2. A= Yes and no. It will not impact a single application in any way. But it multitasking and SWAPPING from one application to another that would hit the HDD pagefile, then yes, you will get a speedup in the SWITCHING TASK. But once the app is loaded, there are no performance gains. Adding a SSD or iRAM drive is EQUIVALENT to having more system RAM and using the /PAE switch. But the system RAM approach is faster.

Conclusion: dont use SSD or iRAM for pagefile. Add additional RAM and use /PAE.

To beat the 2GB/4GB boundary, the only solution is to go 64-bit.
 
Joined
Dec 5, 2006
Messages
7,698 (1.90/day)
Likes
747
Processor i7-5820K
Motherboard Gigabyte X99-UD4
Cooling Corsair H100i
Memory 16GB Crucial DDR4-2400
Video Card(s) Asus Strix GTX 1070
Storage 240GB HyperX 3k, 500GB Samsung 850EVO, 2x WD Black 640gb, WD Black 1TB, Seagate 10TB
Display(s) 2x BenQ 24" 1920x1080
Case BitFenix Ghost
Audio Device(s) Focusrite Saffire PRO 14 -> DBX DriveRack PA+ -> Mackie MR8 and MR10 / Corsair Vengeance 2100
Power Supply Corsair RM1000i
Mouse Logitech G500s
Keyboard Logitech G110
Software Windows 10 x64 Pro
#4
You want to use /PAE switch in your boot.ini, that will give you the most performance gain under a 32bit os for most users.

***Looked above***
Lemonadesoda pretty much laid it out for ya pretty well.
 
Last edited:
Joined
Nov 8, 2006
Messages
5,052 (1.24/day)
Likes
540
Location
Manchester, United Kingdom
Processor AMD FX 8320 @ 4GHz
Motherboard Gigabyte GA-990FXA-UD5 rev1
Cooling Corsair H70
Memory 4 x 4GB DDR3 Ripjawz 1600Mhz
Video Card(s) Sapphire Vapor-X AMD R9 280X
Storage 1 x 500GB Samsung Evo 850, 1 x 500GB Vrap Data Drive, 3 x 2TB Seagate, 1 x 1TB Samsung F1
Display(s) 3 x DGM IPS-2402WDH
Case Coolermaster HAF X
Audio Device(s) Onboard
Power Supply Coolermaster 1000W Silent Pro M
Mouse Logitech G502
Keyboard Logitech G510
Software Windows 10 Pro x64
#5
Conclusion:

F*** it and go 64-bit :p