13.10.2014 Views

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

99<br />

Within this category, it was also observed that many of the benchmarks showed the<br />

greatest change in performance when the final 14 despecializations were performed.<br />

This result was expected since those specialized bytecodes that were executed with<br />

least frequency were despecialized first. Figure 5.10 shows the proportion of the specialized<br />

bytecodes represented by each of the specialized bytecodes considered in this<br />

study. Figure 5.11 shows a cumulative distribution of the specialized bytecodes. This<br />

reveals that the first 48 specialized bytecodes represent 16.9 percent of the specialized<br />

bytecodes executed. The remaining 83.1 percent of the specialized bytecodes<br />

executed were contributed by only the final 14 bytecodes listed in Table 5.1.<br />

5.2.4 Category 3: Benchmarks with Irregular Performance<br />

The final category contains all of the benchmarks that generated performance results<br />

that did not fit into one of the first two categories. Only 16 benchmarks, or 10 percent<br />

of the benchmark/virtual machine/architecture combinations considered in this study<br />

were found to reside in this category. The results within this category were further<br />

divided into four sub-categories:<br />

• Benchmarks that closely approximated no difference in performance (3 benchmarks)<br />

• Benchmarks that closely approximated a trend of slowing performance as the<br />

number of despecializations performed increased (2 benchmarks)<br />

• Benchmarks that showed, or closely approximated, a trend of improving performance<br />

as the number of despecializations performed increased (6 benchmarks)<br />

• Benchmarks that showed an irregular performance pattern that was not covered<br />

by any of the preceding performance groups (5 benchmarks)<br />

The first two groups within this category are not particularly interesting. They<br />

include benchmarks that generated results that closely approximated either category<br />

1 (no change in performance) or category 2 (decreased performance as the result of<br />

performing despecialization). However, in each case, an interruption in the pattern of<br />

behaviour was present. For example, all of the benchmarks in the first group would<br />

have been included within category 1 if a tolerance value of three percent had been<br />

selected instead of the two percent value used during this study. Similarly, the benchmarks<br />

in the second group each showed exactly one despecialization condition that<br />

interrupted the pattern of behaviour. Furthermore, the magnitude of the observed

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!