Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Bloat Analysis: Detecting, Removing, and Preventing Performance Problems in Modern Large- Scale Object-Oriented Applications Guoqing Xu, Nick.

Similar presentations


Presentation on theme: "Software Bloat Analysis: Detecting, Removing, and Preventing Performance Problems in Modern Large- Scale Object-Oriented Applications Guoqing Xu, Nick."— Presentation transcript:

1 Software Bloat Analysis: Detecting, Removing, and Preventing Performance Problems in Modern Large- Scale Object-Oriented Applications Guoqing Xu, Nick Mitchell, Matthew Arnold, Atanas Rountev, Gary Sevitsky Ohio State University IBM T. J. Watson Research

2 Large-Scale Object-Oriented Software * Large libraries 2 SAP Netweaver App server *Framework-intensive applications

3 Runtime Bloat Can be Seen Regularly Example: – A system designed to support a million concurrent users can scale only to thousands of users in practice Consequences – Over-consumed memory – Unacceptable running/response time – Significantly-reduced scalability – Unnecessary system upgrades ($ is wasted!!!) Can it be solved by improved hardware/multicore? 3 OutofMemory Slowdown Non-scalable

4 A Software Engineering Problem Performance problem detection – Profiling [ Xu et al. ICSE’08, PLDI’09, PLDI’10-a, Novark et al. PLDI’09, Arnold and Ryder PLDI’00, Arnold et al. OOPSLA’08 ] – Heap dump analysis [ Mitchell and Sevitsky OOPSLA’07, Altman et al. OOPSLA’10 ] – Static/dynamic analysis [ Xu and Rountev PLDI’10-b, Dufour et al. ISSTA’07, FSE’08 ] – Testing (e.g., worst-case compl. testing [ Burnim et al. ICSE’09 ] ) Performance problem removal – Static transformation [ Dolby and Chien PLDI’00, Xu TR’10 ] – Dynamic optimization [ Arnold et al. OOPSLA’00, IEEE 05 ] Performance problem prevention – What design principles cause the problem? 4

5 Future Directions  Design – Performance-conscious design models (e.g., thin patterns) – Tools that can evaluate the performance of different designs Testing and analysis – Performance specification – Unit testing performance problems  Self-adjusting system that removes bloat – Compiler optimizations that target specific bloat patterns Synthesis of bloat-free implementations 5

6 http://www.cse.ohio-state.edu/~xug Thank you 6


Download ppt "Software Bloat Analysis: Detecting, Removing, and Preventing Performance Problems in Modern Large- Scale Object-Oriented Applications Guoqing Xu, Nick."

Similar presentations


Ads by Google