| Measurement |
Description |
Measurement Unit |
Interpretation |
| Total_serv_memory |
Indicates the total amount of memory that is being currently used by the server. |
MB |
An unusually large usage of memory by the server is a cause of concern. Further
analysis is required to determine if specific users or queries are consuming excess memory. |
| Target_serv_memory |
Indicates the total amount of dynamic memory, which the server can consume. |
MB |
If, over time, the Total server memory measures is less than the Target server memory counter, then this means that SQL server has enough memory to run efficiently. On the other hand, if the Total server memory measures is greater than the Target server memory counter, this indicates that SQL Server may be under memory pressure and could use access to more physical memory. |
| Sql_cache_memory |
Indicates the total amount of dynamic memory that the server is using
for the dynamic SQL cache. |
MB |
The amount of data cache available to SQL Server can significantly affect SQL Server's performance. If the dynamic SQL cache memory usage is low, consider tuning the cache management parameters of SQL server. |
| Optimizer_memory |
Indicates the total amount of dynamic memory, which the server is
using for query optimization. |
MB |
If the optimizer memory usage is low, consider tuning the optimizer memory management
parameters of SQL server. |
| Max_wkspace_memory |
Indicates the maximum amount of memory allocated for the execution of
processes. This memory is used primarily for operations like hash, sort and create index. |
MB |
This parameter is useful in conjunction with the grant workspace memory. When the
grant workspace memory reaches the max workspace memory then we should consider tuning this. |
| Lock_memory |
Indicates the total amount of dynamic memory, which the server has
allocated for locks. |
MB |
If the memory
allocated for locks is less and there is a contention/wait for a lock, try tuning the lock memory management parameters of the Microsoft SQL server. |
| Grant_wkspace_memory |
Indicates the total amount of memory granted for the execution of
processes. This memory is used for hash, sort and create index operations. |
MB |
If the grant workspace memory is nearing the maximum workspace memory then the
maximum workspace memory may have to be increased. |
| Conn_memory |
Indicates the total amount of dynamic memory, which the server is
using for maintaining connections. |
MB |
If the memory allocated for connection is less, try tuning the memory management
parameters of the Microsoft SQL server. |
| Memory_grants_pending |
Indicates the total number of processes waiting for a workspace memory grant. |
Number |
In general, if you have any processes queuing waiting for memory, you should expect degraded performance. The ideal situation for a healthy server is no outstanding memory grants – i.e., the value of this measure should ideally be 0. |