Sql-server – thesterious memory problem

memorysql server

We have TWO of: your standard 2-node active/passive Windows Server 2008 R2 with SQL Server 2008 SP1 Cluster with 1 TB of RAM on the active node and 512 GB on the passive (same on both clusters).

Both OS and SQL "see" the 1 TB of memory and additionally set the following: "min memory" setting to 450 000 (MB) and "max memory" setting to 950 000 (MB)

The problem: every possible monitoring (perfmon metric; red gate sql monitor, task manager, resource monitor etc….) and every possible DMV query show that BOTH clusters cap at exactly 432.6 memory used (PerfMon reports the following for "SQLServer:Memory Manager – Total Server Memory " = 432.6 GB)

I understand the concept behind "it will only use as much as it needs", but I'm certain it can stuff more in there, because the clusters each host 2000+ databases for a total of more than 2 TB worth of often accessed data.

PLUS why would BOTH cluster need exactly 432.6 GB?

Best Answer

Sounds right to me 432.6 GB = 443,000 MB

The SQL Servers are consuming less than "min memory" because that is all they need.

SQL Server is not guaranteed to allocate the amount of memory specified in min server memory. If the load on the server never requires allocating the amount of memory specified in min server memory, SQL Server will run with less memory.

That is, your working set of data does not exceed min memory and this is false:

total of more than 2 TB worth of often accessed data.