Selecting the Maximum Memory Size
Although there are no hard and fast rules for setting the memory threshold, you can use the following formula as a guide. This formula will provide an approximate value that you can use as a starting point and refine through testing.
MaxMemorySize = TotalMemory - (OS + OtherSoftware + BrokerProgram + SafetyMargin)
Where... | Is... |
TotalMemory | The total amount of physical memory (RAM not virtual memory) on the machine. |
OS | The amount of memory consumed by the operating system. |
OtherSoftware | The amount of memory consumed by other software programs that run on the same host machine. |
BrokerProgram | The amount of memory used by the Broker Server program code. 20 MB is a reasonable approximation for this value on a 32-bit processor. 40 MB on a 64-bit processor. |
SafetyMargin | An extra amount that covers memory usage that might not be accounted for in any of the above. |
Example:
Assuming the following values:
TotalMemory = 2000 MB (2 gigabytes)
OS = 800 MB
OtherSoftware = 100 MB
BrokerProgram = 20 MB
SafetyMargin = 100 MB
Calculation:
MaxMemorySize = 2000 - (800 + 100 + 20 + 100)
Result:
MaxMemorySize = 980
Important:
This formula is meant to be used as a starting point for testing. The 'best' max-memory-size is specific to the characteristics of a particular environment and workload (for example, document size, mix of guaranteed and volatile documents). You can identify the right size only through experimentation.