Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.