Memory Usage in Task Manager incorrect for 64bit - by AndyHinchcliffe

Status : 

  By Design<br /><br />
		The product team believes this item works according to its intended design.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 265725 Comments
Status Closed Workarounds
Type Bug Repros 2
Opened 3/28/2007 4:13:41 AM
Access Restriction Public


The Memory Usage and Virtual Memory counters shown in Task Manager for SQL Server 2005 64bit are incorrect.

We are running SQL Server 2005 64bit Developer Edition x64 with SP2 on Windows 2003 64bit R2. The server is a HP DL585 with 4xAMD Opteron processor with 24Gb of RAM. The amount of memory should in the task manager for physical and virtual memory is incorrect.

We have configured SQL Server 2005 to use minumum of 2GB and maximum of 10Gb. But the memory should in task manger is less than 1GB. This is clearly incorrect as the Commit Charge doesn't add up to the memory should for all the processes.

The vitual memory for all the process adds up to about about 4GB, but the commit charge is 14GB. SQL Server 2005 is only showing 200MB. Stopping SQL Server 2005 makes the commit charge drop by 10GB, and starting SQL Server 2005 increases the memory. After running some DBCC CHECKDB or other SQL commands the commit charge rises back up to 14Gb, but SQL is still showing 200MB.

There is clearly a problem with SQL Server 2005 64 bit understating the about of memory in use in Task Manager.
Sign in to post a comment.
Posted by Chris Lively on 7/25/2010 at 7:58 AM
I'm not exactly sure how it could be by design that the application does NOT report that actual memory used. This should be fixed.
Posted by Microsoft on 10/11/2007 at 7:27 AM
Thanks for taking the time to open this issue. It is our hope that your questions have been answered.

Jerome Halmans
Program Manager SQLOS
Posted by Microsoft on 7/31/2007 at 5:25 PM
Reporting on 32bit will behave identically only when AWE is in use. To enable AWE on 32 bit servers requires that the lock pages in memory permission be granted to the SQL Server startup account, that the 'awe enabled' configuration option be set to 1, and that the machine have more physical memory than virtual memory (equates to either 2 or 3GB).

Jerome Halmans
Program Manager SQLOS
Posted by AndyHinchcliffe on 7/31/2007 at 2:22 AM
However this is different to how the 32bit version of SQL Server 2005 SP2 works. Wheather installed on 32bit or 64bit operating system. This shows a similar amount to SQLServer:Memory Manager\Total Server Memory in the Task Manager Memory Usage column. However the 64bit version reports a tiny amount in Task Manager (sometime only 100Mb, whereas it should be 10,000Mb+). If the 32bit worked the same I wouldn't be concerned, but it doesn't. Surely this indicates a problem.
Posted by Microsoft on 7/30/2007 at 11:49 AM
SQL Server allocates memory as needed, up to the value specified in max server memory. The minimum server memory value is not allocated up front, but rather via requests from a workload.

Task manager also may not report total memory accurately if the memory if sql server has the "lock pages in memory" privilege. The correct amount of memory in use by SQL Server buffer pool can be obtained from the system monitor counter SQLServer:Memory Manager\Total Server Memory.

Jerome Halmans
Program Manager SQLOS