Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have my IIS 6 running my website. It is on a Windows Server 2003 which has 4GB of RAM. I run SQL intensive code after the user submits a form (math statistics stuff). This process is not threaded (should it be, especially if 2 or more users run the same thing?). But my process seems to consume only a couple of GBs of memory and the server crawls. How do I get my IIS process to use nearly all the memory?

I see on other sites that its 2GB or 3GB allocated using boot.ini. But is there another way for the process to use memory? If I make it multithreaded, will there be a process for each thread?

share|improve this question
32 bit or 64 bit? – Jim B May 30 '12 at 17:21
up vote 1 down vote accepted

Memory doesn't work the way I think you think it does. While it's quite possible that you are running into a physical memory bottleneck, the server would be paging like mad. The pagefile is where pages that are not currently active are stored. See How do I tell if my Windows server is swapping? for details about how memory is used. As far as the multithreaded question, no you would not allocate an additional memory space per thread. Memory space is allocated per process (either 2userpace +2 system or 8Tb userspace and 128GB system)

share|improve this answer
thanks, my system seems to lag but maybe its my db server – cdub May 30 '12 at 17:38
You need to do some perfmon logging to determine either way – Jim B May 30 '12 at 17:39

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.