Performance reports

You can use the Performance Measurement tool to generate performance reports for operations. You can use performance reports to measure the impact that your caching practices have on your system performance. You can then analyze these reports to help you adjust your caching to improve performance.

When you are generating performance reports, three files are generated:
report-operations.csv
This report provides a simplified view of caching performance. Use this report when you do not need complex statistics about data caching. This report includes the following information:
OPERATION_NAME
The name of the executed operation.
AVERAGE_CALL_DURATION_IN_MS
The average duration of a call (in seconds).
AVERAGE_RESULT_SIZE_IN_BYTES
The average size of a result when the result would be saved in cache.
CUMULATIVE_EXECUTION_TIME_MS
The amount of time that is spent by the system when it runs all of the measured executions of the operation.
CALL_COUNT
The number of calls that are measured for a specific operation.
report-execution.csv
This report lists the main operations that the system executes. These operations are listed from slowest duration to fastest. Use this report to help you identify the slowest requests on your system. You can use this report with execution reports to help identify the performance of the requests by matching the operation name and starting timestamp between the reports. This report includes the following information:
OPERATION_NAME
The name of the executed operation.
DURATION_MS
The duration of the operation in milliseconds.
START_TIME_MS
The start time of the operation in milliseconds as a relative timestamp to the stop time.
STOP_TIME_MS
The stop time of the operation in milliseconds as a relative timestamp to the start time.
RESULT_SIZE
The size of the operation result.
KEY_VALUE
The list of key-values that are used to invoke the operation.
IDENTIFIER
The unique identifier for the execution.
report-operation-cache.csv
Use this report to help you analyze the cache efficiency and potential for every operation. This report includes information for all the following metrics. This report can include measurements and information for the following metrics:
MS_SAVED_PER_BYTE
The time (in seconds) that is saved on your system for every byte of cache that you allocate to a specific operation. This value is based on the assumption that your cache is infinite and that the cache access is instantaneous. You can use this information to help you determine the best place to allocate your available cache resources.
CACHE_ALLOCATION_IN_BYTES
The recommended amount of memory (in bytes) to allocate to the cache. This amount is based on the allocatedCacheSize variable that is set in the analysis.properties file.
AVERAGE_CALL_DURATION_IN_MS
The average duration of a call (in seconds).
AVERAGE_CACHE_HIT_DURATION_IN_MS
The average duration of a call when the call results in a cache hit.
AVERAGE_CACHE_MISS_DURATION_IN_MS
The average duration of a call when the call results in a cache miss.
AVERAGE_RESULT_SIZE_IN_BYTES
The average size of a result when the result would be saved in cache.
CUMULATIVE_EXECUTION_TIME_MS
The amount of time that is spent by the system when it runs all of the measured executions of the operation.
MAX_CACHE_ALLOCATION_SIZE_IN_BYTES
This is the maximum amount of cache (in bytes) that this operation could take if all of the unique calls are stored in cache.
MAX_CACHE_BENEFIT_MS
The amount of time that is saved during the execution of an operation if the operation uses a perfect cache that takes no execution time for a cache hit.
UNIQUE_CACHE_ENTRY_COUNT
The number of unique cache entries that generate if you have an infinite cache and every operation result is cached.
MAX_THEORIC_CACHE_HIT_COUNT
The number of cache hits that generate during the cache performance measurement if you have an infinite cache and every operation result is cached and never invalidated.
REAL_CACHE_HIT_COUNT
The number of request results that are actually fetched from the cache when your cache is enabled. You can use this information to find the operations that are redundant.
REAL_CACHE_ENABLED_COUNT
The number of calls that are executed where caching is enabled.
CACHE_ENABLED_CALL_PERCENTAGE
The percentage of calls that occur when the cache is enabled.
MAX_THEORIC_CACHE_HIT_PERCENTAGE
The theoretical maximum number of requests that result in cache hits if you have an infinite cache and no invalidation occurs.
REAL_CACHE_HIT_PERCENTAGE
The percentage of requests that result in actual cache hits.
CACHE_EFFECTIVENESS_VS_THEORY_PERCENTAGE
The effectiveness of your cache as a percentage of the effectiveness of the maximum value that is predicted by the theoretical caching of the operation. You can use this information to help you find where your caching practices are inefficient. This information can also help you to pinpoint where your cache is too efficient and might be missing a key.
CALL_COUNT
The number of calls that are measured for a specific operation.