Jump to content

Windows memory use...


Recommended Posts

Is there a way to make Windows XP/2003 to use all available RAM and only when it's full to start using pagefile.sys?

I know how to do that in linux, but I have no clue how to do it in Windows Server 2003... :no:

Link to comment
Share on other sites


I don't know if there is a method of doing that, but even then I wouldn't use it.

There are a lot of valid reasons why you don't want Windows to use the entire RAM before starting to swap.

I'll give an example:

You have a number of programs running which use the entire RAM (and probably some swap space). When I start a new program Windows will first have to swap data from memory to swapspace and then load the new program into RAM before starting the new program.

If we don't allocate all RAM we get:

The new program gets loaded into RAM at once and starts. Windows then schedules a task to move some non-frequently used data from RAM to swapspace (at a slightly lower priority) to get the RAM usage under a certain threshold.

Although the same amount of date gets moved to swap the second scenario appears to run faster for users because their applications start running earlier in the process.

Link to comment
Share on other sites

You know, you want to force everything to stay in RAM so that things run faster, right? Well, if do what you want to do, your computer will run slower.

Windows memory managment is optimized for performance, just leave it as is.

Link to comment
Share on other sites

I remember once, I thought I could do it better then Microsoft had it set up, so I messed around with all the different memory settings that are available in the registry and I turned my computer into a real hog. It was awful. Last time I messed with that. :blink:

Link to comment
Share on other sites

If you want to "tune" your memory management, move page file to another HDD and add /3GB switch to boot.ini(it is NOT alocating 3GB to user memory space, it is changing the way memory is divided. Ever server with more then 1GB should have this switch)

Link to comment
Share on other sites

A small quote from Microsoft Windows Internals 4th edition:

Using the /3GB switch increases the size of the user process address space from 2 GB to 3GB (and therefore reduces the size of system space from 2 GB to 1 GB) Giving virtual-memory-intensive applications such as database servers a larger address space can improve their performance. For an application to take advantage of this feature, however, two additional conditions must be met: the system must be running Windows XP, Windows Server 2003, Windows 2000 Advanced Server, or Datacenter Server; and the application .exe must be flagged as a 3-GB-aware application (applies to 32-bit systems only).
There aren't a lot of programs out there that are compiled with the correct flags to support a 3 GB address space, so this setting doesn't really have that much effect. It can even reduce performance, because system space is reduced to 1 GB, while most applications can only use the 2 GB of user process address space, thus in theory wasting 1 GB of virtual memory.

(The only application i know for sure that are compiled with the correct switches are IIS and MSSQL)

Edited by Nazgul
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...