What is the reasoning behind allocating the OS 1GB for each 4GB of RAM?



  • Link: https://codingsight.com/understanding-the-importance-of-memory-setting-in-sql-server/

    Let us now briefly look at the techniques to size the memory.

    1 GB of memory reserved for Operating System 1 GB each for every 4 GB of RAM after the initial 4 GB, up to 16 GB of RAM 1 GB each for every 8 GB in more than 16 GB of RAM For example, if you have a 32 GB RAM Database Server, then memory to be given to Operating System would be

    1 GB, the minimum allocation

    • 3 GB, since 16 GB – 4 GB = 12 GB; 12 GB divided by 4 GB (each 4 GB gets 1 GB) is 3GB.
    • 2 GB, as 32 GB – 16 GB = 16 GB; 16 divided by 8 (each 8 GB after 16 GB gets 1 GB) is 2 GB So, in total, for a server with 32 GB of RAM, 7 GB will be reserved for the Operating System. This is the maximum memory allocated to SQL Server should be 25 GB. Similarly, for a 64 GB Server, 10 GB should be reserved for the Operating System & 54 GB should be allocated for SQL Server.

    What is the reasoning behind allocating the OS 1GB for each 4GB of RAM?



  • I'd say ask the author, he's got quite a complicated formula for calculating Memory allocation, IMO.

    There's a bunch of rule of thumbs out there on how much Memory to leave the OS hosting a SQL Server instance - they're all pretty good. Brent Ozar's starter rule of thumb is to allocate 4 GB or 10% of the total Memory, whichever is larger, as discussed in https://www.brentozar.com/blitz/max-memory/ . I usually follow this rule myself and haven't had any issues with it.




Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2