Database Reference
In-Depth Information
In the Memory category, there are two important properties: LowMemoryLimit
and TotalMemoryLimit . For these properties, values greater than 100 are absolute
values (scientific notation is supported in msmdsrv.ini ) in bytes. Values of less
than 100 are interpreted as a percentage, where the reference value of 100 percent is
calculated as the minimum of the physical memory and the virtual memory available
for a process. So, for example a value of 100 would be interpreted as follows: on a
32-bit server with 8 GB of RAM, there is still a 2 GB limit on addressable memory
(or 3 GB if we have the /3GB option enabled), so it would be interpreted as 2 GB; on
a 64-bit server with 8 GB of RAM, it would be interpreted as 8 GB; on a 32-bit server
with only 1 GB RAM, it would be interpreted as 1 GB. Here's what each of these
properties actually represents:
LowMemoryLimit : This defines the point at which the server is low on
memory. The default setting for a single instance installation is 65 (percent),
and that is appropriate in most cases, but if we had other processes on the
same machine, we might want to use a lower value. If we want to know the
actual value that a percentage setting represents, we can look at the MSAS
Memory / Memory Limit Low KB performance counter.
TotalMemoryLimit : This is the maximum percentage of virtual memory
that Analysis Services will use. The default is 80 (percent) and again this
is appropriate in most cases. If we want to know the actual value that a
percentage setting represents is, we can look at the MSAS Memory / Memory
Limit High KB performance counter.
The Analysis Services Memory Manager will carry on requesting memory
from the operating system until memory usage reaches the value specified in
TotalMemoryLimit . At the same time, though, it also tries to reduce memory
usage when it reaches the LowMemoryLimit : when memory usage is between
LowMemoryLimit and TotalMemoryLimit , Analysis Services tries to reduce
memory requests and to free up memory previously allocated.
However, it takes time to free up memory and there are also some types of internal
allocations that cannot be freed up. For these reasons, it is not always possible to
control the memory allocated by Analysis Services and increasing the gap between
LowMemoryLimit and TotalMemoryLimit gives Analysis Services more leeway to
react to changes in memory usage. Making the gap between these two properties'
values too small is not a good idea, and the default values in Analysis Services 2012
generally provide a good balance (Analysis Services 2005 had a LowMemoryLimit of
75 percent, which proved to be too high in some cases).
 
Search WWH ::




Custom Search