Microsoft Office Tutorials and References
In Depth Information
Understanding Operational Concepts
The Memory Cache Threshold administrator setting determines the size of the ECS process that triggers
freeing unused objects. When the size of the process goes above this limit, unused objects are freed to
reduce the size of the process.
The Maximum Unused Object Age administrator setting determines how long objects can be kept unused
before being freed. Unused objects older than this age are freed even if the process size is below the limit,
in order to allow other processes on the machine to use the memory.
If the machine has only the ECS process on it, you can increase these settings to let the ECS take full
advantage of the resources and maximize its performance. When other processes share the machine, you can
reduce them to achieve the right balance.
The ECS decides which objects to free based on an algorithm that takes into account when the object was
last used, how much it was used, how complex the object is, and how much memory it uses. It will first
free objects that were not used recently, were not used much, are less complex, and use a lot of memory.
These factors are weighted together to decide the order of freeing the objects when the process needs
Maximum Private Bytes
The administrator can set a maximum size for the ECS process. When this limit is reached, new requests
will fail for this specific ECS machine, and might be redirected to another ECS machine if it is available.
For example, this limit can be reached if there are no unused objects in memory. (Existing sessions use a
lot of memory.)
This limit is called Maximum Private Bytes , and it can be set by the administrator. The limit you should
set depends on how much memory is available on the machine, and if the machine is running other
processes that require a lot of memory.
Figure 3-10 shows how the system behaves and frees memory, depending on the size of the process and
the administrator settings.
In the previous examples, the workbook instance was discussed as an object that can be shared between
sessions, and that can be used or unused. The ECS manages the following objects:
The calculated workbook instance — This was discussed earlier.
The results of a data query — Data queries are a potentially expensive operation. The query results
can be shared among those that use the same identity when connecting to the data source.
The loaded workbook — This includes the cached workbook available on the local disk.
A saved workbook — An example is a workbook that is generated when you start Excel, open a
snapshot with the EWA, or call GetWorkbook with the API. If this cached object is available,
performing the operation a second time brings the saved workbook from the cache instead of
saving it again.