This article has been archived. It is offered "as is" and will no longer be updated.
Memory leaks, regardless of where they occur, tend to manifest the same behavior. As a process continues to run, a decreasing amount of memory is available over time and eventually the process can run out of memory to allocate.
Internet Information Server (IIS) has no known memory leaks at this time. There are, however, typically dozens of components that are used within the Inetinfo process that may have memory leaks. Over time, these leaks can accrue, potentially causing the entire process to stop responding.
Be aware that on high volume sites, a growth in memory over the first 24 hours of use is not uncommon. IIS caches much of its data and the Time To Live (TTL) on the cache is 24 hours. In fact, the IIS file cache is set to use up to half of available memory by default.
IMPORTANT: This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:
256986 Description of the Microsoft Windows Registry
NOTE: You can use the procedures given below to examine any process that you suspect has a memory leak; to do so, replace "Inetinfo.exe" with the name of your process.
To get memory usage logs of the Inetinfo process which can be resolved against modules that are allocating memory, complete the following steps:
Install the necessary symbol files.
At the command prompt, type the following:
To enable memory allocation tracking:
Start Registry Editor (Regedt32.exe).
Locate the GlobalFlag value under the following key in the registry:
Dh.exe is included as part of the Windows NT 4.0 Resource Kit, Supplement 2 or higher. To download it, expand Network/Server Administration Tools from the tree on the left, and click Dh.exe.
Dhcmp.exe is included as part of the Windows NT 4.0 Resource Kit, Supplement 4. To download it, expand New Tools from the tree on the left, and click New Tools with Supplement Four.
Restart your web server.
Press CTRL+ALT+DELETE, click Task Manager, click the Processes tab, and locate the process ID (PID) for Inetinfo.exe.
Open a command window, switch to the directory into which you copied Dh.exe and Dhcmp.exe, and enter the following command:
dh -p PID -f before.txt
Wait for the leak to show, and then enter the following command:
dh -p PID -f after.txt
Once the logs are captured, enter the following command:
dhcmp -d before.txt after.txt>cmp.txt
Send the Before.txt, After.txt, and Cmp.txt files to your Microsoft Support Professional via FTP. (If you like, you may zip these files.) Please see the Microsoft File Exchange Web page for information on transferring files via FTP: