Home > Research > Publications & Outputs > SlowCoach

Electronic data

  • permute

    Rights statement: ©2022 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

    Accepted author manuscript, 388 KB, PDF document

    Available under license: CC BY-NC: Creative Commons Attribution-NonCommercial 4.0 International License

Links

Text available via DOI:

View graph of relations

SlowCoach: Mutating Code to Simulate Performance Bugs

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Published

Standard

SlowCoach: Mutating Code to Simulate Performance Bugs. / Chen, Yiqun; Schwahn, Oliver; Natella, Roberto et al.
33rd IEEE International Symposium on Software Reliability Engineering. New York: IEEE, 2022. p. 274-285 (2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)).

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Harvard

Chen, Y, Schwahn, O, Natella, R, Bradbury, M & Suri, N 2022, SlowCoach: Mutating Code to Simulate Performance Bugs. in 33rd IEEE International Symposium on Software Reliability Engineering. 2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE), IEEE, New York, pp. 274-285. https://doi.org/10.1109/ISSRE55969.2022.00035

APA

Chen, Y., Schwahn, O., Natella, R., Bradbury, M., & Suri, N. (2022). SlowCoach: Mutating Code to Simulate Performance Bugs. In 33rd IEEE International Symposium on Software Reliability Engineering (pp. 274-285). (2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)). IEEE. https://doi.org/10.1109/ISSRE55969.2022.00035

Vancouver

Chen Y, Schwahn O, Natella R, Bradbury M, Suri N. SlowCoach: Mutating Code to Simulate Performance Bugs. In 33rd IEEE International Symposium on Software Reliability Engineering. New York: IEEE. 2022. p. 274-285. (2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)). Epub 2022 Oct 31. doi: 10.1109/ISSRE55969.2022.00035

Author

Chen, Yiqun ; Schwahn, Oliver ; Natella, Roberto et al. / SlowCoach : Mutating Code to Simulate Performance Bugs. 33rd IEEE International Symposium on Software Reliability Engineering. New York : IEEE, 2022. pp. 274-285 (2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)).

Bibtex

@inproceedings{61695499513b448b9a0ea47e79a13197,
title = "SlowCoach: Mutating Code to Simulate Performance Bugs",
abstract = "Performance bugs are unnecessarily inefficient code chunks in software codebases that cause prolonged execution times and degraded computational resource utilization. For performance bug diagnostics, tools that aid in the identification of said bugs, such as benchmarks and profilers, are commonly employed. However, due to factors such as insufficient workloads or ineffective benchmarks, software defects related to code inefficiencies are inherently difficult to diagnose. Hence, the capabilities of performance bug diagnostic tools are limited and performance bug instances may be missed. Traditional mutation testing (MT) is a technique for quantifying a test suite's ability to find functional bugs by mutating the code of the test subject. Similarly, we adopt performance mutation testing (PMT) to evaluate performance bug diagnostic tools and identify where improvements need to be made to a performance testing methodology. We carefully investigate the different performance bug fault models and how synthesized performance bugs based on these models can evaluate benchmarks and workload selection to help improve performance diagnostics. In this paper, we present the design of our PMT framework, SLOWCOACH, and evaluate it with over 1600 mutants from 4 real-world software projects.",
author = "Yiqun Chen and Oliver Schwahn and Roberto Natella and Matthew Bradbury and Neeraj Suri",
note = "{\textcopyright}2022 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE. ",
year = "2022",
month = dec,
day = "21",
doi = "10.1109/ISSRE55969.2022.00035",
language = "English",
isbn = "9781665451338",
series = "2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)",
publisher = "IEEE",
pages = "274--285",
booktitle = "33rd IEEE International Symposium on Software Reliability Engineering",

}

RIS

TY - GEN

T1 - SlowCoach

T2 - Mutating Code to Simulate Performance Bugs

AU - Chen, Yiqun

AU - Schwahn, Oliver

AU - Natella, Roberto

AU - Bradbury, Matthew

AU - Suri, Neeraj

N1 - ©2022 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

PY - 2022/12/21

Y1 - 2022/12/21

N2 - Performance bugs are unnecessarily inefficient code chunks in software codebases that cause prolonged execution times and degraded computational resource utilization. For performance bug diagnostics, tools that aid in the identification of said bugs, such as benchmarks and profilers, are commonly employed. However, due to factors such as insufficient workloads or ineffective benchmarks, software defects related to code inefficiencies are inherently difficult to diagnose. Hence, the capabilities of performance bug diagnostic tools are limited and performance bug instances may be missed. Traditional mutation testing (MT) is a technique for quantifying a test suite's ability to find functional bugs by mutating the code of the test subject. Similarly, we adopt performance mutation testing (PMT) to evaluate performance bug diagnostic tools and identify where improvements need to be made to a performance testing methodology. We carefully investigate the different performance bug fault models and how synthesized performance bugs based on these models can evaluate benchmarks and workload selection to help improve performance diagnostics. In this paper, we present the design of our PMT framework, SLOWCOACH, and evaluate it with over 1600 mutants from 4 real-world software projects.

AB - Performance bugs are unnecessarily inefficient code chunks in software codebases that cause prolonged execution times and degraded computational resource utilization. For performance bug diagnostics, tools that aid in the identification of said bugs, such as benchmarks and profilers, are commonly employed. However, due to factors such as insufficient workloads or ineffective benchmarks, software defects related to code inefficiencies are inherently difficult to diagnose. Hence, the capabilities of performance bug diagnostic tools are limited and performance bug instances may be missed. Traditional mutation testing (MT) is a technique for quantifying a test suite's ability to find functional bugs by mutating the code of the test subject. Similarly, we adopt performance mutation testing (PMT) to evaluate performance bug diagnostic tools and identify where improvements need to be made to a performance testing methodology. We carefully investigate the different performance bug fault models and how synthesized performance bugs based on these models can evaluate benchmarks and workload selection to help improve performance diagnostics. In this paper, we present the design of our PMT framework, SLOWCOACH, and evaluate it with over 1600 mutants from 4 real-world software projects.

U2 - 10.1109/ISSRE55969.2022.00035

DO - 10.1109/ISSRE55969.2022.00035

M3 - Conference contribution/Paper

SN - 9781665451338

T3 - 2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)

SP - 274

EP - 285

BT - 33rd IEEE International Symposium on Software Reliability Engineering

PB - IEEE

CY - New York

ER -