This useful DMV Sys.dm_os_memory_clerks produces a recordset of SQL Server memory clerks currently active. Being aware of memory pressure is critical to managing SQL Server performance . I use this DMV as part of a suite of queries which track external memory pressure and VAS pressure e.g caused by OLE automation memory pressure
SQL Server memory manager is made up of 3 levels :
Level 3 - Memory objects
Level 2 - Memory clerks, memory caches,memory pools
Level1 - Memory nodes
The Memory nodes manage low-level allocation and within SQL Server only the memory clerks interface with the memory nodes. The other purpose of memory clerks is to manage Resource Monitor notifications.
From a diagnostic perspective , components with a noticeable memory consumption are assigned a memory clerk.
You can use the sys.dm_os_memory_clerks DMV as follows to find out how much memory SQL Server has allocated through AWE mechanism.
select sum(awe_allocated_kb) / 1024 as [AWE allocated, Mb] from sys.dm_os_memory_clerks
You can interorogate the full recordset of sys.dm_os_memory_clerks. The column I find useful when analysing memory pressure issues is awe_allocated_kb . This column displays the amount of memory allocated by the memory clerk to the component by AWE
This is only a preview. Your comment has not yet been posted.
As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.
Having trouble reading this image? View an alternate.
Posted by: |