Performance Analysis of Idle Programs

被引:46
作者
Altman, Erik
Arnold, Matthew
Fink, Stephen
Mitchell, Nick
机构
关键词
Performance; bottlenecks; performance analysis; multi-tier server applications; idle time;
D O I
10.1145/1932682.1869519
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper presents an approach for performance analysis of modern enterprise-class server applications. In our experience, performance bottlenecks in these applications differ qualitatively from bottlenecks in smaller, stand-alone systems. Small applications and benchmarks often suffer from CPU-intensive hot spots. In contrast, enterprise-class multi-tier applications often suffer from problems that manifest not as hot spots, but as idle time indicating a lack of forward motion. Many factors can contribute to undesirable idle time, including locking problems, excessive system-level activities like garbage collection, various resource constraints, and problems driving load. We present the design and methodology for WAIT, a tool to diagnosis the root cause of idle time in server applications. Given lightweight samples of Java activity on a single tier, the tool can often pinpoint the primary bottleneck on a multi-tier system. The methodology centers on an informative abstraction of the states of idleness observed in a running program. This abstraction allows the tool to distinguish, for example, between hold-ups on a database machine, insufficient load, lock contention in application code, and a conventional bottleneck due to a hot method. To compute the abstraction, we present a simple expert system based on an extensible set of declarative rules. WAIT can be deployed on the fly, without modifying or even restarting the application. Many groups in IBM have applied the tool to diagnosis performance problems in commercial systems, and we present a number of examples as case studies.
引用
收藏
页码:739 / 753
页数:15
相关论文
共 24 条
[1]  
AGUILERA MK, 2003, S OP SYST PRINC
[2]  
Alexander W. P., 2000, IBM SYSTEMS J, V39
[3]  
AMMONS G, 2004, EUR C OBJ OR PROGR
[4]  
*BORL SOFTW CORP, 2005, OPT ENT SUIT
[5]  
*COMP, COMPU VANT AN
[6]  
DARMAWAN B, IBM TIVOLI COMPOSITE
[7]  
DEPAUW W, 2002, LECT NOTES COMPUTER, V2269
[8]  
*ECL, ECL TEST PERF TOOLS
[9]   CPPROFJ: Aspect-capable call path profiling of multi-threaded Java']Java applications [J].
Hall, RJ .
ASE 2002: 17TH IEEE INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, 2002, :107-116
[10]  
HOLLINGSWORTH JK, 1994, THESIS U WISCONSIN