Solved

Using /3GB or PAE with 32bit applications

Posted on 2010-09-03
9
1,045 Views
Last Modified: 2013-11-10
Hi Everyone

We have an application running on a Windows 2003 Server Enterprise 32bit. The application itself is 32bit too. The server is running on VM and has 4GB RAM allocated to it.

The application seems to be eating more and more memory! Whilst we are looking into what is causing this (memory leak, patch etc), our server guys have advised thay they can allocate more RAM to the server. BUT - they will need to use the PAE switch or 3GB switch in order for the OS and application to 'see' this extra memory.

Not being a server admin, I was hoping a memory expert could help me out here.

Firstly, does the /3GB switch actually allow for the OS/app to see more memory? I thought it only changed the allocation of virtual address memory from 2GB:2GB to 3GB:1GB app: kernal ratio?

Secondly, I guess we can use PAE, but will this help if the app is not 'PAE' aware?

Thirdly, are there any disadvantages to using PAE, or is this recommended to 'trick' the OS into seeing more than 4GB RAM?

Finally, given that the server is a VM, are there are any disadvantages from a VM perspective (assuming we have enough RAM on the host).

Many thanks in advance!
0
Comment
Question by:neil4933
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +1
9 Comments
 
LVL 5

Expert Comment

by:TechnicallyMaybe
ID: 33599097
Using /3GB allocates 3GB of the virtual memory space to applications instead of the default 2.  This helps performance in systems with 4GB or more RAM.  Not going to be as fast as a 64-bit OS, but you shouldn't have any problems using /pae and /3gb
0
 
LVL 12

Accepted Solution

by:
Rant32 earned 500 total points
ID: 33599230
Having more RAM available is always a good thing, but more important is that /3GB eats away 1GB of very crucial kernel memory.

If the server role is a file server, print server, Terminal Server, IIS, or has many services associated, then you should NOT use the /3GB switch because it will make your server absolutely unstable. Also be aware that the /3GB switch decreases the Non Paged Pool area maximum size from 256 MB to 128 MB which may not be enough to load all drivers for your system (I've seen serious problems with this on HP DL380 G5 servers) which causes IIS to stop accepting connections.

/PAE doesn't generally hurt, but /3GB has serious consequences.
0
 
LVL 12

Expert Comment

by:Rant32
ID: 33599295
/PAE will make all physical RAM available to the OS, but it doesn't increase the maximum memory available for each 32-bit process (that is still limited to 2 GB, unless the app is AWE capable). As I said, I don't recommend adding /3GB on a production machine just to have 3GB of application memory.

If your server is running multiple instances/services/processes that use 2 GB of memory, then adding RAM and using /PAE will help, because each process can use 2GB. If the application at hand is a single process, then adding more than 4 GB of memory will not help you very much on a 32-bit platform (depending on memory requirements of other processes).
0
Schedule a Tour of the ATEN booth at InfoComm 2017

Tour the ATEN booth to see the the Latest Addition to the Modular Matrix Switch Series, New 4K HDMI Over IP Extender and more! Enter ATEN's Ultimate Giveaway Sweepstakes for a chance to win one of several great prizes, including an ATEN US7220 2-Port Thunderbolt 2 Sharing Switch!

 

Author Comment

by:neil4933
ID: 33599609
Thanks guys.

One further question - looks like PAE could be beneficial whereas /3GB could hurt us. As regards PAE, does the application need to be "PAE aware" in order to see this extra memory?

Also, from a memory point of view, how does this fit into the idea of each process having a 4GB virtual memory address space (with 2GB reserved for the app, and 2GB reserved for the OS). Does PAE actually increase this 4GB virtual address memory space? Or does it keep it at 4GB, but just allow more of them that can be translated to physical memory?
0
 
LVL 5

Expert Comment

by:TechnicallyMaybe
ID: 33599639
No, the app does not have to be PAE aware.

PAE does not increase the virtual memory space. It simply is just able to store more info in physical memory instead of paging it off.

You'll still want to maintain a pagefile.
0
 
LVL 10

Expert Comment

by:LMiller7
ID: 33600743
The /3GB is all about virtual address space and has very little to do with how much RAM the system has or how it is used. Before even contemplating this setting be sure the application is Large Address Space Aware. If it isn't the setting will be of no benefit whatsoever, while the constrained system address space may have serious implications.

If the application is aware it MAY benefit from the setting.

PAE simply allows a 32 bit system to access more than 4GB RAM. This setting has no implications for applications. There may be a small performance loss due to the extra level of address translation - 3 levels with PAE, 2 without. A 64 bit OS will always have a 4 level translation, even with less than 4GB RAM.
0
 

Author Comment

by:neil4933
ID: 33600775
Thanks both..

So basically, PAE is a Win/Win situation, we don't need to check whether the app is PAE 'aware', using the switch is the best way to let a 32bit system see more than 4GB RAM (providing the OS supports it, e.g. 2003 Server Enterprise)?
0
 
LVL 5

Expert Comment

by:TechnicallyMaybe
ID: 33601261
You are correct.  Also, 2003 standard supports 16GB memory.
0
 
LVL 10

Expert Comment

by:LMiller7
ID: 33601735
PAE is the ONLY way a 32 bit OS can use more than 4GB of RAM.
0

Featured Post

Free NetCrunch network monitor licenses!

Only on Experts-Exchange: Sign-up for a free-trial and we'll send you your permanent license!

Here is what you get: 30 Nodes | Unlimited Sensors | No Time Restrictions | Absolutely FREE!

Act now. This offer ends July 14, 2017.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this article, I will show you HOW TO: Install VMware Tools for Windows on a VMware Windows virtual machine on a VMware vSphere Hypervisor 6.5 (ESXi 6.5) Host Server, using the VMware Host Client. The virtual machine has Windows Server 2016 instal…
In this article, I will show you HOW TO: Perform a Physical to Virtual (P2V) Conversion the easy way from a computer backup (image).
Advanced tutorial on how to run the esxtop command to capture a batch file in csv format in order to export the file and use it for performance analysis. He demonstrates how to download the file using a vSphere web client (or vSphere client) and exp…
This video shows you how to use a vSphere client to connect to your ESX host as the root user. Demonstrates the basic connection of bypassing certification set up. Demonstrates how to access the traditional view to begin managing your virtual mac…

690 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question