Towards effective assessment of steady state performance in Java software: Are we there yet?

L Traini, V Cortellessa, D Di Pompeo… - Empirical Software …, 2023 - Springer
Microbenchmarking is a widely used form of performance testing in Java software. A
microbenchmark repeatedly executes a small chunk of code while collecting measurements …

Survey and analysis of kernel and userspace tracers on linux: Design, implementation, and overhead

M Gebai, MR Dagenais - ACM Computing Surveys (CSUR), 2018 - dl.acm.org
As applications and operating systems are becoming more complex, the last decade has
seen the rise of many tracing tools all across the software stack. This article presents a …

Virtual machine warmup blows hot and cold

E Barrett, CF Bolz-Tereick, R Killick, S Mount… - Proceedings of the ACM …, 2017 - dl.acm.org
Virtual Machines (VMs) with Just-In-Time (JIT) compilers are traditionally thought to execute
programs in two phases: the initial warmup phase determines which parts of a program …

Is big data performance reproducible in modern cloud networks?

A Uta, A Custura, D Duplyakin, I Jimenez… - … USENIX symposium on …, 2020 - usenix.org
Performance variability has been acknowledged as a problem for over a decade by cloud
practitioners and performance engineers. Yet, our survey of top systems conferences …

Software microbenchmarking in the cloud. How bad is it really?

C Laaber, J Scheuner, P Leitner - Empirical Software Engineering, 2019 - Springer
Rigorous performance engineering traditionally assumes measuring on bare-metal
environments to control for as many confounding factors as possible. Unfortunately, some …

How software refactoring impacts execution time

L Traini, D Di Pompeo, M Tucci, B Lin… - ACM Transactions on …, 2021 - dl.acm.org
Refactoring aims at improving the maintainability of source code without modifying its
external behavior. Previous works proposed approaches to recommend refactoring …

What's wrong with my benchmark results? Studying bad practices in JMH benchmarks

D Costa, CP Bezemer, P Leitner… - IEEE Transactions on …, 2019 - ieeexplore.ieee.org
Microbenchmarking frameworks, such as Java's Microbenchmark Harness (JMH), allow
developers to write fine-grained performance test suites at the method or statement level …

Predicting unstable software benchmarks using static source code features

C Laaber, M Basmaci, P Salza - Empirical Software Engineering, 2021 - Springer
Software benchmarks are only as good as the performance measurements they yield.
Unstable benchmarks show high variability among repeated measurements, which causes …

Faster or slower? performance mystery of python idioms unveiled with empirical evidence

Z Zhang, Z Xing, X Xia, X Xu, L Zhu… - 2023 IEEE/ACM 45th …, 2023 - ieeexplore.ieee.org
The usage of Python idioms is popular among Python developers in a formative study of 101
Python idiom performance related questions on Stack Overflow, we find that developers …

Robust benchmarking in noisy environments

J Chen, J Revels - arXiv preprint arXiv:1608.04295, 2016 - arxiv.org
We propose a benchmarking strategy that is robust in the presence of timer error, OS jitter
and other environmental fluctuations, and is insensitive to the highly nonideal statistics …