Boosting Java Performance Using GPGPUsCitation formats

Standard

Boosting Java Performance Using GPGPUs. / Clarkson, James; Kotselidis, Christos; Brown, Gavin; Luján, Mikel.

Architecture of Computing Systems - ARCS 2017: 30th International Conference, Vienna, Austria, April 3--6, 2017, Proceedings. ed. / Jens Knoop; Wolfgang Karl; Martin Schulz; Koji Inoue; Thilo Pionteck. Cham : Springer Nature, 2017. p. 59-70 (Lecture Notes in Computer Science; Vol. 10172).

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Harvard

Clarkson, J, Kotselidis, C, Brown, G & Luján, M 2017, Boosting Java Performance Using GPGPUs. in J Knoop, W Karl, M Schulz, K Inoue & T Pionteck (eds), Architecture of Computing Systems - ARCS 2017: 30th International Conference, Vienna, Austria, April 3--6, 2017, Proceedings. Lecture Notes in Computer Science, vol. 10172, Springer Nature, Cham, pp. 59-70. https://doi.org/10.1007/978-3-319-54999-6_5

APA

Clarkson, J., Kotselidis, C., Brown, G., & Luján, M. (2017). Boosting Java Performance Using GPGPUs. In J. Knoop, W. Karl, M. Schulz, K. Inoue, & T. Pionteck (Eds.), Architecture of Computing Systems - ARCS 2017: 30th International Conference, Vienna, Austria, April 3--6, 2017, Proceedings (pp. 59-70). (Lecture Notes in Computer Science; Vol. 10172). Springer Nature. https://doi.org/10.1007/978-3-319-54999-6_5

Vancouver

Clarkson J, Kotselidis C, Brown G, Luján M. Boosting Java Performance Using GPGPUs. In Knoop J, Karl W, Schulz M, Inoue K, Pionteck T, editors, Architecture of Computing Systems - ARCS 2017: 30th International Conference, Vienna, Austria, April 3--6, 2017, Proceedings. Cham: Springer Nature. 2017. p. 59-70. (Lecture Notes in Computer Science). https://doi.org/10.1007/978-3-319-54999-6_5

Author

Clarkson, James ; Kotselidis, Christos ; Brown, Gavin ; Luján, Mikel. / Boosting Java Performance Using GPGPUs. Architecture of Computing Systems - ARCS 2017: 30th International Conference, Vienna, Austria, April 3--6, 2017, Proceedings. editor / Jens Knoop ; Wolfgang Karl ; Martin Schulz ; Koji Inoue ; Thilo Pionteck. Cham : Springer Nature, 2017. pp. 59-70 (Lecture Notes in Computer Science).

Bibtex

@inproceedings{d1d2f71c51e542778dbd740cbd48d8bc,
title = "Boosting Java Performance Using GPGPUs",
abstract = "In this paper we describe Jacc, an experimental framework which allows developers to program GPGPUs directly from Java. The goal of Jacc, is to allow developers to benefit from using heterogeneous hardware whilst minimizing the amount of code refactoring required. Jacc utilizes two key abstractions: tasks which encapsulate all the information needed to execute code on a GPGPU; and task graphs which capture both inter-task control-flow and data dependencies. These abstractions enable the Jacc runtime system to automatically choreograph data movement and synchronization between the host and the GPGPU; eliminating the need to explicitly manage disparate memory spaces. We demonstrate the advantages of Jacc, both in terms of programmability and performance, by evaluating it against existing Java frameworks. Experimental results show an average performance speedup of 19x, using NVIDIA Tesla K20m GPU, and a 4x decrease in code complexity when compared with writing multi-threaded Java code across eight evaluated benchmarks.",
author = "James Clarkson and Christos Kotselidis and Gavin Brown and Mikel Luj{\'a}n",
year = "2017",
month = mar,
day = "4",
doi = "10.1007/978-3-319-54999-6_5",
language = "Undefined",
isbn = "978-3-319-54999-6",
series = "Lecture Notes in Computer Science",
publisher = "Springer Nature",
pages = "59--70",
editor = "Jens Knoop and Wolfgang Karl and Martin Schulz and Koji Inoue and Thilo Pionteck",
booktitle = "Architecture of Computing Systems - ARCS 2017: 30th International Conference, Vienna, Austria, April 3--6, 2017, Proceedings",
address = "United States",

}

RIS

TY - GEN

T1 - Boosting Java Performance Using GPGPUs

AU - Clarkson, James

AU - Kotselidis, Christos

AU - Brown, Gavin

AU - Luján, Mikel

PY - 2017/3/4

Y1 - 2017/3/4

N2 - In this paper we describe Jacc, an experimental framework which allows developers to program GPGPUs directly from Java. The goal of Jacc, is to allow developers to benefit from using heterogeneous hardware whilst minimizing the amount of code refactoring required. Jacc utilizes two key abstractions: tasks which encapsulate all the information needed to execute code on a GPGPU; and task graphs which capture both inter-task control-flow and data dependencies. These abstractions enable the Jacc runtime system to automatically choreograph data movement and synchronization between the host and the GPGPU; eliminating the need to explicitly manage disparate memory spaces. We demonstrate the advantages of Jacc, both in terms of programmability and performance, by evaluating it against existing Java frameworks. Experimental results show an average performance speedup of 19x, using NVIDIA Tesla K20m GPU, and a 4x decrease in code complexity when compared with writing multi-threaded Java code across eight evaluated benchmarks.

AB - In this paper we describe Jacc, an experimental framework which allows developers to program GPGPUs directly from Java. The goal of Jacc, is to allow developers to benefit from using heterogeneous hardware whilst minimizing the amount of code refactoring required. Jacc utilizes two key abstractions: tasks which encapsulate all the information needed to execute code on a GPGPU; and task graphs which capture both inter-task control-flow and data dependencies. These abstractions enable the Jacc runtime system to automatically choreograph data movement and synchronization between the host and the GPGPU; eliminating the need to explicitly manage disparate memory spaces. We demonstrate the advantages of Jacc, both in terms of programmability and performance, by evaluating it against existing Java frameworks. Experimental results show an average performance speedup of 19x, using NVIDIA Tesla K20m GPU, and a 4x decrease in code complexity when compared with writing multi-threaded Java code across eight evaluated benchmarks.

U2 - 10.1007/978-3-319-54999-6_5

DO - 10.1007/978-3-319-54999-6_5

M3 - Conference contribution

SN - 978-3-319-54999-6

T3 - Lecture Notes in Computer Science

SP - 59

EP - 70

BT - Architecture of Computing Systems - ARCS 2017: 30th International Conference, Vienna, Austria, April 3--6, 2017, Proceedings

A2 - Knoop, Jens

A2 - Karl, Wolfgang

A2 - Schulz, Martin

A2 - Inoue, Koji

A2 - Pionteck, Thilo

PB - Springer Nature

CY - Cham

ER -