Help with memory usage.

  • OK, I have a very odd problem.

    I am running SQL 2008 64-Bit on Windows 2008 64-Bit, with SQL using both floor and ceiling memory settings.

    However, SQL ends up using more memory than what I have specified as the MAX (ceiling) setting (MAX is supposed to be 36,000,000).

    At times this server has it's available RAM (reported by PerfMon) fall below 66MB.

    Is that safe? Should I lower the MAX used setting in SQL more than I have it, and why can it use more than I have specified already?

    Any help is appreciated.

    Here is a rundown:

    40,949MB = Total Memory

    36,864MB = Used by SQL

    4085MB Should be Free for the OS.

    However, only 66MB is free after OS.

    4019MB is missing or used by other processes & OS.

    Date & Time System Available Memory Memory Used by SQL

    7/3/12 3:42PM 66.00 36,861,952.00

  • Are you running SQL on a virtual machine?

    I'm wondering if there are several SQL installs on the physical box in question and memory used by others is reflecting in the total numbers you are looking at.

    Brandie Tarvin, MCITP Database AdministratorLiveJournal Blog: http://brandietarvin.livejournal.com/[/url]On LinkedIn!, Google+, and Twitter.Freelance Writer: ShadowrunLatchkeys: Nevermore, Latchkeys: The Bootleg War, and Latchkeys: Roscoes in the Night are now available on Nook and Kindle.

  • MAX is supposed to be 36,000,000

    Where this come from? Have you set this value in Max server memory?

  • tim.cloud (7/23/2012)


    4085MB Should be Free for the OS.

    However, only 66MB is free after OS.

    4019MB is missing or used by other processes & OS.

    This part is misleading to me, or I'm not understanding.

    It sounds like your OS is using 4019, leaving 66 MB free total.

  • 36,000,000 is from the MAX server memory SQL setting.

    Yes, the OS is using the other 4MB.

    But shouldn't there be some free room?

  • tim.cloud (7/23/2012)


    36,000,000 is from the MAX server memory SQL setting.

    Yes, the OS is using the other 4MB.

    But shouldn't there be some free room?

    Max server memory, value is in MB

    So 36,000,000 MB = 36 TB

    Is that something you wanted to set?

    In current situation I'll free 2 Gb (at least 1 GB) from SQL and woul set Max Memory = 38912 34816 MB and monitor the memory usage.

  • I'd suggest reducing SQL to 32GB rather than 36GB. Remember that Windows needs some RAM to manage the other RAM. I think you're cutting it too close initially.

    First, you could look at the Task Manager, Available and Free RAM as the quick-and-dirty way to check for memory pressure.

    SQL DBA,SQL Server MVP(07, 08, 09) "Money can't buy you happiness." Maybe so, but it can make your unhappiness a LOT more comfortable!

  • Sorry, 36,000,000 was a typo. I meant 36,000MB.

  • I think your right about that. Not sure if 32GB is the right number, but maybe 34GB for SQL maximum memory which would give the MPA+OS+Other Processes 6GB to consume instead of 4GB?

  • tim.cloud (7/23/2012)


    I think your right about that. Not sure if 32GB is the right number, but maybe 34GB for SQL maximum memory which would give the MPA+OS+Other Processes 6GB to consume instead of 4GB?

    I think you're right. But with memory for SQL, I tend to start a little lower and work my way up slowly, verifying that no memory strain occurs. No reboot is required, so it's easy enough to bump it up on the fly.

    Leave a little RAM cushion in case someone starts up Acrobat and/or Java and/or whatever other memory hog/semi-hog when on that server itself.

    SQL DBA,SQL Server MVP(07, 08, 09) "Money can't buy you happiness." Maybe so, but it can make your unhappiness a LOT more comfortable!

Viewing 10 posts - 1 through 9 (of 9 total)

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