@inproceedings{38bcde496e0c4c069c646dd5b22a22f7,
title = "Analysing Static Source Code Features to Determine a Correlation to Steady State Performance in Java Microbenchmarks",
abstract = "Source code analysis is an important aspect of software development that provides insight into a program's quality, security and performance. There are few methods for consistently predicting or determining when a written piece of code will end its warm-up state and proceed to a steady state. In this study, we use the data gathered by the SEALABQualityGroup at the University of L'Aquila and Charles University and extend their research of steady state analysis to determine whether certain source code features could provide a basis for developers to make more informed predictions on when a steady state would occur. We explore if there is a direct correlation between source code features on the time and ability of a Java microbenchmark to reach a steady state to build a machine learning-based approach for steady-state prediction. We found that the correlation between source code features and the probability of reaching a steady state go as high as 10.9% for Pearson's correlation coefficient, whereas the correlation between source code features and the time it takes to reach a steady state go as high as 21.6% for Spearman's correlation coefficient. Our results also show that a K Nearest Neighbour Classifier with features selected with either Spearman's or Kendall's correlation coefficient boasts an accuracy of 78.6%.",
keywords = "ANTLR, correlation coefficient, correlation study, Java microbenchmark, Kendall's tau, machine-learning, Pearson's r, Spearman's roh, static source code analysis, steady state",
author = "Swanzen, {Jared Chad} and Botes, {Kyle Thomas} and Husnaa Molvi and Omphile Monchwe and Dan Phala and {Van Der Haar}, Dustin",
note = "Publisher Copyright: {\textcopyright} 2023 ACM.; 14th Annual ACM/SPEC International Conference on Performance Engineering, ICPE 2023 ; Conference date: 15-04-2023 Through 19-04-2023",
year = "2023",
month = apr,
day = "15",
doi = "10.1145/3578245.3584692",
language = "English",
series = "ICPE 2023 - Companion of the 2023 ACM/SPEC International Conference on Performance Engineering",
publisher = "Association for Computing Machinery, Inc",
pages = "89--93",
booktitle = "ICPE 2023 - Companion of the 2023 ACM/SPEC International Conference on Performance Engineering",
}