2005 · 26 citations · 7 references
ComputingComputer EngineeringComputer ScienceFormal MethodsPerformance MeasurementStatistical ComputingData ProfilingData-flow AnalysisCode InstrumentationExecution Trace AnalysisExecution TracingNp-hardnessPerformance ProfilingProfilingSystem ProfilingUse Case Formalization
Performance profiling consists of monitoring a software system during execution and then analyzing the obtained data. There are two ways to collect profiling data: event tracing through code instrumentation and statistical sampling. These two approaches have different advantages and drawbacks. This paper proposes a hybrid approach to data collection that combines the completeness of event tracing with the low cost of statistical sampling. We propose to maximize the weighted amount of information obtained during data collection, show that such maximization can be performed in linear time or is NP-hard depending on the data collected and the collection implementation. We propose an approximation algorithm for NP-hard case. Our paper also presents an application of the formal approach to an example use case.
7
Jennifer M. Anderson, Lance M. Berc, Jeffrey A. Dean et al. · ACM Transactions on Computer Systems · 1997 · 483 citations · Full text
A framework for reducing the cost of instrumented code
Matthew Arnold, Barbara G. Ryder · 2001 · 366 citations · Full text
Jennifer M. Anderson, Lance M. Berc, Jeffrey A. Dean et al. · 1997 · 119 citations