05.08.2014 Views

here - Stefan-Marr.de

here - Stefan-Marr.de

here - Stefan-Marr.de

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.2. A Survey of Parallel and Concurrent Programming Concepts<br />

3.2.3. Threats to Validity<br />

For the validity of the conclusions drawn from this survey, two of its properties<br />

are of major interest: completeness and correctness. The completeness of this<br />

study cannot be guaranteed since it did not cover all existing literature in the<br />

field. Even if it would have covered all known literature, it would still suffer<br />

from the completeness problem since an analysis requires manual work<br />

in which certain concepts could be overlooked. However, since this study is<br />

based on existing surveys and is complemented with programming languages<br />

and a wi<strong>de</strong> range of recent work, it covers a significant range of concepts and<br />

inclu<strong>de</strong>s all major trends.<br />

The correctness of this survey might be reduced by the subsumption of concepts,<br />

because relevant <strong>de</strong>tails may have been ignored that could have yiel<strong>de</strong>d<br />

additional problems that need to be tackled by a VM. However, since the discar<strong>de</strong>d<br />

<strong>de</strong>tails are most likely specific to a single concept, they would not have<br />

yiel<strong>de</strong>d problems that are as general as the ones already discussed in this survey.<br />

Another aspect of the correctness of the results is their consistency with<br />

the discussion in Sec. 3.1. To prevent such consistency issues, the data for the<br />

survey is recor<strong>de</strong>d in a machine readable format. Appendix A.2 <strong>de</strong>tails the<br />

used templates for the survey and gives the full list of concepts i<strong>de</strong>ntified for<br />

each subject. By using a machine readable notation, it was possible to check<br />

the consistency between the two surveys automatically. For instance, the automation<br />

inclu<strong>de</strong>s a cross-check of the assessment of the different surveys on<br />

whether a concept is supported by a VM, and whether a library implementation<br />

is possible. Thus, consistency between concepts and their implementation<br />

and implementability is given between the two surveys.<br />

3.2.4. Summary<br />

This survey discusses a wi<strong>de</strong> range of concepts for concurrent and parallel<br />

programming. For each concept, it answers the question of whether the concept’s<br />

semantics benefit from an enforcement in the VM and whether its performance<br />

could benefit significantly from VM support.<br />

A flexible optimization infrastructure and monitoring facilities can be beneficial<br />

for performance. The first conclusion is that the various concepts<br />

would benefit from a wi<strong>de</strong> range of different optimizations. They all could<br />

benefit from access to the JIT compiler infrastructure to improve optimization.<br />

However, to use it properly they would require additional mechanisms<br />

67

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

Saved successfully!

Ooh no, something went wrong!