Proceedings of the 33rd ACM SIGPLAN Conference on Programming Language Design and Implementation 2012
DOI: 10.1145/2254064.2254075
|View full text |Cite
|
Sign up to set email alerts
|

Understanding and detecting real-world performance bugs

Abstract: Developers frequently use inefficient code sequences that could be fixed by simple patches. These inefficient code sequences can cause significant performance degradation and resource waste, referred to as performance bugs. Meager increases in single threaded performance in the multi-core era and increasing emphasis on energy efficiency call for more effort in tackling performance bugs.This paper conducts a comprehensive study of 109 real-world performance bugs that are randomly sampled from five representativ… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

3
106
0
3

Year Published

2013
2013
2024
2024

Publication Types

Select...
3
3
2

Relationship

0
8

Authors

Journals

citations
Cited by 217 publications
(123 citation statements)
references
References 56 publications
3
106
0
3
Order By: Relevance
“…Rather than having a full-blown monitoring, only explicit signals can be monitored. Beyond these strategies, limplock detection can leverage a rich body of literature in peer comparison [38], sampling [35], and root-cause analysis [15,33,44].…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…Rather than having a full-blown monitoring, only explicit signals can be monitored. Beyond these strategies, limplock detection can leverage a rich body of literature in peer comparison [38], sampling [35], and root-cause analysis [15,33,44].…”
Section: Discussionmentioning
confidence: 99%
“…All of these lead to performance failures, which is considered a big "nuisance" in largescale system management. Recent work has addressed many sources of performance failures such as heterogeneous systems [30,52], unbalanced resource allocation [29,42,47], software bugs [33], configuration mistakes [15] and straggling tasks [13,22].…”
Section: Introductionmentioning
confidence: 99%
“…Each iteration of the process retrieves an allocation site node p c from allocList and attempts to find allocation site nodes that are referenced by p c . This is achieved by performing a breath-first traversal of the graph starting from node p c (lines [12][13][14][15][16][17][18][19][20][21][22][23][24]. For each node q d reached during the traversal (line 13), the algorithm inspects each of its outgoing edges.…”
Section: Computing Data Structure Cacheability Measurementsmentioning
confidence: 99%
“…Work by Xu et al [35,36,37,38,34] finds copy-and container-related inefficiencies. Jin et al from [17] studies performance bugs in real-world software systems. These bugs are analyzed to extract efficiency rules, which are then applied to detect problems in other applications.…”
Section: Related Workmentioning
confidence: 99%
“…I. In a followup work [14] they also describe bugs that manifest as performance slowdowns in concurrent programs. Schaefer et al [15] showed several examples of how sequential refactorings can break concurrent programs.…”
Section: Related Workmentioning
confidence: 99%