Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation 2015
DOI: 10.1145/2737924.2737966
|View full text |Cite
|
Sign up to set email alerts
|

Static detection of asymptotic performance bugs in collection traversals

Abstract: This paper identifies and formalizes a prevalent class of asymptotic performance bugs called redundant traversal bugs and presents a novel static analysis for automatically detecting them. We evaluate our technique by implementing it in a tool called CLARITY and applying it to widely-used software packages such as the Google Core Collections Library, the Apache Common Collections, and the Apache Ant build tool. Across 1.6M lines of Java code, CLAR-ITY finds 92 instances of redundant traversal bugs, including 7… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

1
18
0

Year Published

2016
2016
2022
2022

Publication Types

Select...
3
3
2

Relationship

0
8

Authors

Journals

citations
Cited by 59 publications
(19 citation statements)
references
References 57 publications
1
18
0
Order By: Relevance
“…We also considered svg-sanitizer 21 , which performs server-side sanitisation of SVG content (used in Drupal and WordPress as a plugin). On passing the crafted SVG file as input, svg-sanitizer, entered a non-terminating computation which make services using the plugin susceptible to DoS attacks.…”
Section: Listing 12 Nested References In Svgmentioning
confidence: 99%
“…We also considered svg-sanitizer 21 , which performs server-side sanitisation of SVG content (used in Drupal and WordPress as a plugin). On passing the crafted SVG file as input, svg-sanitizer, entered a non-terminating computation which make services using the plugin susceptible to DoS attacks.…”
Section: Listing 12 Nested References In Svgmentioning
confidence: 99%
“…However, such techniques require available inputs. Some previous work has focused on identifying redundant traversals of data-structures [45,46,48], a special class of algorithmic complexity bugs. Although these techniques help pin-point program locations that may contain complexity bugs, they do not generate the offending inputs automatically.…”
Section: Related Workmentioning
confidence: 99%
“…CLARITY [Olivo et al 2015] is a recent work that shows promising results in detecting repeated traversals of arrays. Even though repeated traversals could hint on possible (not necessarily true) redundant computations, they are insufficient for precisely detecting or removing redundant computations.…”
Section: Related Workmentioning
confidence: 99%