Home > Research > Publications & Outputs > On the Parallel Programmability of JavaSymphony...

Links

Text available via DOI:

View graph of relations

On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Published

Standard

On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters. / Aleem, Muhammad; Prodan, Radu; Islam, Muhammad Arshad et al.
In: International Journal of Ad hoc and Ubiquitous Computing, Vol. 30, No. 4, 30.04.2019, p. 247-264.

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Harvard

Aleem, M, Prodan, R, Islam, MA & Iqbal, MA 2019, 'On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters', International Journal of Ad hoc and Ubiquitous Computing, vol. 30, no. 4, pp. 247-264. https://doi.org/10.1504/IJAHUC.2019.098861

APA

Aleem, M., Prodan, R., Islam, M. A., & Iqbal, M. A. (2019). On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters. International Journal of Ad hoc and Ubiquitous Computing, 30(4), 247-264. https://doi.org/10.1504/IJAHUC.2019.098861

Vancouver

Aleem M, Prodan R, Islam MA, Iqbal MA. On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters. International Journal of Ad hoc and Ubiquitous Computing. 2019 Apr 30;30(4):247-264. Epub 2019 Mar 31. doi: 10.1504/IJAHUC.2019.098861

Author

Aleem, Muhammad ; Prodan, Radu ; Islam, Muhammad Arshad et al. / On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters. In: International Journal of Ad hoc and Ubiquitous Computing. 2019 ; Vol. 30, No. 4. pp. 247-264.

Bibtex

@article{c24f33513b6b4fbdb2373fda917f6af9,
title = "On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters",
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 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.",
keywords = "parallel programming, Java, multi-core scheduler, GPU computing",
author = "Muhammad Aleem and Radu Prodan and Islam, {Muhammad Arshad} and Iqbal, {Muhammad Azhar}",
year = "2019",
month = apr,
day = "30",
doi = "10.1504/IJAHUC.2019.098861",
language = "English",
volume = "30",
pages = "247--264",
journal = "International Journal of Ad hoc and Ubiquitous Computing",
number = "4",

}

RIS

TY - JOUR

T1 - On the Parallel Programmability of JavaSymphony for Multi-cores and Clusters

AU - Aleem, Muhammad

AU - Prodan, Radu

AU - Islam, Muhammad Arshad

AU - Iqbal, Muhammad Azhar

PY - 2019/4/30

Y1 - 2019/4/30

N2 - 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 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.

AB - 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 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.

KW - parallel programming

KW - Java

KW - multi-core scheduler

KW - GPU computing

U2 - 10.1504/IJAHUC.2019.098861

DO - 10.1504/IJAHUC.2019.098861

M3 - Journal article

VL - 30

SP - 247

EP - 264

JO - International Journal of Ad hoc and Ubiquitous Computing

JF - International Journal of Ad hoc and Ubiquitous Computing

IS - 4

ER -