SQLBufferpool AWE Consuming Available Memory

  • Good Day All

    I have a server with 128GB RAM, Server2008R2 (64Bit) and SQLServer2008R2 also 64bit.

    We have lock pages in memory set on the SQL service account and also set sql max server memory to 110GB.

    The problem is that RAM Map states the 80GB+ is allocated to AWE.

    SQL is not configured to use AWE (sp_configure value = 0).

    But when querying the sys.dm_os_memory_clerks sys view it states the MEMORYCLERK_SQLBUFFERPOOL is consuming 87,912,480KB in the awe_allocated_kb field.

    My question is if SQL is 64bit, and the OS is 64bit, why on earth would the commited memory be a few hundered MB but SQL AWE is over 80GB?

    I read somewhere that some API's that are enabled to use AWE might be causing this but i have no idea how to prove/trace that.

    Regards

  • Since you have locked pages enabled, SQL is using the physical alloc API to allocate memory for the buffer pool, that shows up as AWE memory (nothing to do with the AWE setting which does nothing under 64-bit)

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • So if the server comes under memory pressure and the OS asks for memory will SQL give back some of the memory held in "AWE".

  • Yes. If the OS requests SQL to reduce it's memory usage, SQL will do so, down to the value of min server memory.

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • Thanks for the help Gila.

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply