Dynamic performance stubs provide a framework to simulate the performance behavior of software modules and functions. Hence, they can be used as an extension to software performance engineering methodologies. The methodology of dynamic performance stubs targets to gain oriented performance improvement. Other applications include the identification of "hidden" bottlenecks and the prioritization of optimization alternatives. Main memory stubs have been developed to extend the simulation possibilities of the dynamic performance stubs framework. They are able to simulate the heap and stack behavior of software modules or functions. This paper extends and improves the simulation algorithm to be able to simulate constant stack values. Moreover, it presents calibration possibilities to improve the simulation results by determining the various overhead in the algorithm. The results are furthermore used to compensate inaccuracies in the simulation. Additionally, a proof of concept is given as validation of the results. This paper shows that, main memory stubs can be used to simulate the heap, stack and timing behavior exactly when considering the parameters determined by the calibration functions.
Memory Systems Software Performance Evaluation and Testing Modeling Performance Optimization, Bounds and Models Case Studies