2003
DOI: 10.1145/780731.780766
|View full text |Cite
|
Sign up to set email alerts
|

On the side-effects of code abstraction

Abstract: More and more devices contain computers with limited amounts of memory. As a result, code compaction techniques are gaining popularity, especially when they also improve performance and power consumption, or at least not degrade it. This paper quantifies the side-effects of code abstraction on performance using extensive measurements and simulations on the SPECint2000 benchmark suite and some additional C++ programs. We show how to use profile information in order to obtain almost all the code size reduction b… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

1
4
0

Year Published

2005
2005
2007
2007

Publication Types

Select...
3
1
1

Relationship

1
4

Authors

Journals

citations
Cited by 5 publications
(5 citation statements)
references
References 20 publications
1
4
0
Order By: Relevance
“…With respect to the instruction cache misses, the results presented in the top chart of Figure 20 are in line with the results presented by Debray et al [2000] and De Sutter et al [2003]. Because of the whole-program optimizations, the working set size decreased, and therefore fewer instruction cache misses were observed when no duplicate code elimination was applied that introduced overhead.…”
Section: Instruction Countssupporting
confidence: 82%
See 1 more Smart Citation
“…With respect to the instruction cache misses, the results presented in the top chart of Figure 20 are in line with the results presented by Debray et al [2000] and De Sutter et al [2003]. Because of the whole-program optimizations, the working set size decreased, and therefore fewer instruction cache misses were observed when no duplicate code elimination was applied that introduced overhead.…”
Section: Instruction Countssupporting
confidence: 82%
“…Reducing the size of the whole program indeed does not imply that the working set size is reduced. In practice, the working set size even increases [De Sutter et al 2003]. This follows from the 90/10 rule that states that 90% of the executed instructions corresponds to 10% of the static instructions.…”
Section: Cost Of Duplicate Code Eliminationmentioning
confidence: 99%
“…~time (f ) < threshold (1) where time09 denotes the percentage of execution time spent in the function. Functions are selected using a greedy algorithm with a ratio…”
Section: A Compilation Iterationmentioning
confidence: 99%
“…This trade-off issue has already been pointed out in [3,23] but no algorithm has been proposed to automatically compute a solution for maximizing the compression rate while minimizing the performance penalty. The selection of the code to compress in the previous works is left to the user [9,15,23] or is fixed [1,3].…”
Section: Introductionmentioning
confidence: 99%
“…As various found code fragments can overlap, only one of the marked code fragments is extracted per mining step. Two different extraction methods are used: if a fragments ends with an unconditional return statement or a branch instruction, a cross jump or tail merge is used [16,17]. Otherwise a subroutine call is necessary.…”
mentioning
confidence: 99%