HWM & Active counters in monProcedureCacheMemory|ModuleUsage
Since 15.0.x ASE comes with handy PC MDAs - monProcedureCacheMemoryUsage and monProcedureCacheModuleUsage. Both are "essential" in sizing the PC correctly - and analyzing PC behavior for your application & ASE. There counters are very nice but... over time they become user-un-friendly.
Both counters are not absolute point-in-time sample values but rather grow over time. But if they grow - what do they show?
- Active (for ModuleUsage) must show "Number of memory pages (2K) currently allocated to this module".
- HWM show "The maximum number of memory pages allocated since the server was started."
There may be further broken down into sub-allocators.
You'd expect Active to indicate the sample value from the point-of-time of inspection and HWM to indicate the number of memory pages since the startup (i.e. relative to the DaysRunning from the monState). Yet, both behave in the same cumulative manner and both yield useless values if divided into daily portions and compared to say monitorconfig. The same applies to the reuse values packed into these tables.
Anyone tried to make sense of these values? They are essential in configuring PC on the one hand but accumulate over time on the other (and exceed PC size in hundreds of % + are marked as indicator&1). What do these in fact display? How do they relate to monitorconfig? When you restart ASE (or play with these on your private ASE) the numbers seem to make sense. When you analyze them on the real production environment - they only mislead (as does the sysmon bit in the Indicator column related to them).
ps. PERFORMANCE SCALABILITY ENHANCEMENTS IN SAP ADAPTIVE SERVER® ENTERPRISE has a neat section on PC sizing which, too, rely on monProcedureCacheModuleUsage. However, the values are taken as simple aggregates - without any respect to their cumulative nature. Was ASE bounced to take correct measurement? How reliable are the HWM/Reuse numbers in that paper?