TY - GEN
T1 - Speedoo
T2 - 40th International Conference on Software Engineering, ICSE 2018
AU - Chen, Zhifei
AU - Chen, Bihuan
AU - Xiao, Lu
AU - Wang, Xiao
AU - Chen, Lin
AU - Liu, Yang
AU - Xu, Baowen
N1 - Publisher Copyright:
© 2018 ACM.
PY - 2018/5/27
Y1 - 2018/5/27
N2 - Performance problems widely exist in modern software systems. Existing performance optimization techniques, including profiling-based and pattern-based techniques, usually fail to consider the architectural impacts among methods that easily slow down the overall system performance. This paper contributes a new approach, named Speedoo, to identify groups of methods that should be treated together and deserve high priorities for performance optimization. The uniqueness of Speedoo is to measure and rank the performance optimization opportunities of a method based on 1) the architectural impact and 2) the optimization potential. For each highly ranked method, we locate a respective Optimization Space based on 5 performance patterns generalized from empirical observations. The top ranked optimization spaces are suggested to developers as potential optimization opportunities. Our evaluation on three real-life projects has demonstrated that 18.52% to 42.86% of methods in the top ranked optimization spaces indeed undertook performance optimization in the projects. This outperforms one of the state-of-the-art profiling tools YourKit by 2 to 3 times. An important implication of this study is that developers should treat methods in an optimization space together as a group rather than as individuals in performance optimization. The proposed approach can provide guidelines and reduce developers' manual effort.
AB - Performance problems widely exist in modern software systems. Existing performance optimization techniques, including profiling-based and pattern-based techniques, usually fail to consider the architectural impacts among methods that easily slow down the overall system performance. This paper contributes a new approach, named Speedoo, to identify groups of methods that should be treated together and deserve high priorities for performance optimization. The uniqueness of Speedoo is to measure and rank the performance optimization opportunities of a method based on 1) the architectural impact and 2) the optimization potential. For each highly ranked method, we locate a respective Optimization Space based on 5 performance patterns generalized from empirical observations. The top ranked optimization spaces are suggested to developers as potential optimization opportunities. Our evaluation on three real-life projects has demonstrated that 18.52% to 42.86% of methods in the top ranked optimization spaces indeed undertook performance optimization in the projects. This outperforms one of the state-of-the-art profiling tools YourKit by 2 to 3 times. An important implication of this study is that developers should treat methods in an optimization space together as a group rather than as individuals in performance optimization. The proposed approach can provide guidelines and reduce developers' manual effort.
KW - Architecture
KW - Metrics
KW - Performance
UR - http://www.scopus.com/inward/record.url?scp=85049408492&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85049408492&partnerID=8YFLogxK
U2 - 10.1145/3180155.3180229
DO - 10.1145/3180155.3180229
M3 - Conference contribution
AN - SCOPUS:85049408492
T3 - Proceedings - International Conference on Software Engineering
SP - 811
EP - 821
BT - Proceedings of the 40th International Conference on Software Engineering, ICSE 2018
Y2 - 27 May 2018 through 3 June 2018
ER -