Title
On-the-fly capacity planning
Abstract
When resolving performance problems, a simple histogram of hot call stacks does not cut it, especially given the highly fluid nature of modern deployments. Why bother tuning, when adding a few CPUs via the management console will quickly resolve the problem? The findings of these tools are also presented without any sense of context: e.g. string conversion may be expensive, but only matters if it contributes greatly to the response time of user logins. Historically, these concerns have been the purview of capacity planning. The power of planners lies in their ability to weigh demand versus capacity, and to do so in terms of the important units of work in the application (such as user logins). Unfortunately, they rely on measurements of rates and latencies, and both quantities are difficult to obtain. Even if possible, when all is said and done, these planners only relate to the code as a black-box: but, why bother adding CPUs, when easy code changes will fix the problem? We present a way to do planning on-the-fly: with a few call stack samples taken from an already-running system, we predict the benefit of a proposed tuning plan. We accomplish this by simulating the effect of a tuning action upon execution speed and the way it shifts resource demand. To identify existing problems, we show how to generate tuning actions automatically, guided by the desire to maximize speedup without needless expense, and that these generated plans may span resource and code changes. We show that it is possible to infer everything needed from these samples alone: levels of resource demand and the units of work in the application. We evaluate our planner on a suite of microbenchmarks and a suite of 15,000 data sets that come from real applications running in the wild.
Year
DOI
Venue
2013
10.1145/2509136.2509540
OOPSLA
Keywords
Field
DocType
user logins,easy code change,span resource,tuning action,capacity planning,on-the-fly capacity planning,proposed tuning plan,shifts resource demand,code change,resource demand,hot call stack,expert system
Programming language,Suite,Computer science,Expert system,Call stack,Response time,Planner,Real-time computing,Capacity planning,Performance tuning,Distributed computing,Speedup
Conference
Volume
Issue
ISSN
48
10
0362-1340
Citations 
PageRank 
References 
3
0.39
14
Authors
2
Name
Order
Citations
PageRank
Nick Mitchell120512.52
Peter F. Sweeney274269.82