How exactly can i troubleshoot MEMORY_ALLOCATION_EXT waits?

tuxmania picture tuxmania · Oct 8, 2016 · Viewed 12.4k times · Source

We have a server environment in SQL Server 2016. The Server is virtualized meaning it shares its memory and cpu.

Lately if heavily under stress i.e. sorts building hashtables etc. we see heavy growth of memory usage that was expectable.

However we see many

MEMORY_ALLOCATION_EXT 

RESERVED_MEMORY_ALLOCATION_EXT

Waits.

So the server had enough memory and we also doubled the memory recently but still the memory waits remain.

From monitoring the server state it doesn't seem it needs more memory but what would you suggest can be the cause of those waits?

Answer

Salvador L picture Salvador L · Aug 15, 2017

Paul Randall says that it is safe to ignore "MEMORY_ALLOCATION_EXT", and his guidance is very reliable; look at the predicate "WHERE [wait_type] NOT IN" on the query.

For RESERVED_MEMORY_ALLOCATION_EXT I'd setup an Extended Event that caches what specific transactions are having those waits and see their execution plan. I am not positive that it relates to actual system or user transactions.