@Article{Prodan2019JavaSymphony,
author = {Aleem, Muhammad and Prodan, Radu Aurel and Arshad Islam, Muhammad and Azhar Iqbal, Muhammad},
journal = {International Journal of Ad Hoc and Ubiquitous Computing},
title = {{On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters}},
year = {2019},
month = {März},
number = {4},
pages = {247--264},
volume = {30},
abstract = {This paper explains the programming aspects of a promising Java-based programming and execution framework called JavaSymphony. JavaSymphony provides unified high-level programming constructs for applications related to shared, distributed, hybrid memory parallel computers, and co-processors accelerators. JavaSymphony applications can be executed on a variety of multi-/many-core conventional and data-parallel architectures. JavaSymphony is based on the concept of dynamic virtual architectures, which allows programmers to define a hierarchical structure of the underlying computing resources and to control load-balancing and task-locality. In addition to GPU support, JavaSymphony provides a multi-core aware scheduling mechanism capable of mapping parallel applications on large multi-core machines and heterogeneous clusters. Several real applications and benchmarks (on modern multi-core computers, heterogeneous clusters, and machines consisting of a combination of different multi-core CPU and GPU devices) have been used to evaluate the performance. The results demonstrate that the JavaSymphony outperforms the Java implementations, as well as other modern alternative solutions.},
doi = {10.1504/IJAHUC.2019.098861},
url = {
https://www.inderscience.com/info/inarticle.php?artid=98861}
}