05.08.2014 Views

here - Stefan-Marr.de

here - Stefan-Marr.de

here - Stefan-Marr.de

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.

8. Evaluation: Performance<br />

1.10<br />

1.05<br />

1.00<br />

0.95<br />

Binary Trees<br />

Chameneos<br />

Fannkuch<br />

Fasta<br />

NBody<br />

Compiler<br />

Slopstone<br />

Smopstone<br />

Runtime Ratio, normalized to<br />

RoarVM (Clang 3.0), lower is better<br />

RoarVM (Clang 3.0)<br />

RoarVM (GCC 4.2)<br />

Figure 8.3.: Baseline Performance: Comparing RoarVM compiled with Clang 3.0 and<br />

GCC 4.2. All results are normalized to the mean of the measurement for Clang.<br />

The beanplot shows the distribution of measurements and indicates that GCC<br />

4.2 produces a binary that is about 3% slower, which is not significant in view of<br />

the differences measured between the other VMs.<br />

8.4. Ad hoc vs. OMOP Performance<br />

When assessing the practicality of the OMOP compared to ad hoc approaches<br />

for implementing concurrent programming concepts, the main question is<br />

whether an implementation based on the OMOP will be required to accept<br />

performance penalties for using the extra level of abstraction. In short, the<br />

experiments discussed in this section indicate that this is not necessarily the<br />

case and OMOP-based implementations can be on par with ad hoc implementations.<br />

Setup To compare the performance between OMOP-based and ad hoc implementations,<br />

the proposed experiments use the LRSTM and AmbientTalkST<br />

variants of the benchmarks and measure the runtime for the following eight<br />

configurations:<br />

With this setup, on the one hand the performance of ad hoc implementations<br />

can be compared to OMOP-based implementations, and on the other<br />

hand, the efficiency of the AST-transformation-based (AST-OMOP) and the<br />

214

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

Saved successfully!

Ooh no, something went wrong!