Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Trying to understand different memory clerks reported by sys.dm_os_memory_clerk however, not able to find description of the each individual memory clerk either on web (google and binged) or in SQL BOL. Some of the clerk can be self explanatory based on the name e.g. MEMORYCLERK_SQLXP (assuming it is for extended proc) or SQLCLR etc.

However, some of the memory clerk confused me for e.g. MEMORYCLERK_SQLGENERAL vs MEMORYCLERK_SQLBUFFERPOOL? OR SQLUTILITIES.

Is there an online reference that tells description of these memory clerks in SQL Server?

ps. The question is not how memory management works in SQL Server. Slava Oak has good blog posts regarding how memory management works but no details on different clerks.

share|improve this question

There're a few good articles on Google that cover the basics. Best bet for your specific query might be this one:

In depth look at Memory

share|improve this answer
Good article, thanks for sharing that. – Cougar9000 May 20 '13 at 17:05

There are 4 kinds of memory clerks in SQL Server.

  1. Generic
  2. Cache Store
  3. Object Store
  4. User store

memoryclerk_sqlgeneral is a general memory clerk responsible for a variety of non-specific sql activities whereas the memoryclerk_sqlbufferpool is the clerk dedicated solely to the buffer pool, since the buffer pool is a busy process.


SQLServer-DBA memory

MSDN Memory Clerks

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.