Bohrium.rb - The Ruby front end

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningfagfællebedømt

Standard

Bohrium.rb - The Ruby front end. / Larsen, Mads Ohm; Vinter, Brian.

Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). red. / Jan Baekgaard Pedersen; Kevin Chalmers; Jan F. Broenink; Brian Vinter; Kevin Vella; Peter H. Welch; Marc L. Smith; Kenneth Skovhede. IMIA and IOS Press, 2019. s. 335-346 (Concurrent Systems Engineering Series, Bind 70).

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningfagfællebedømt

Harvard

Larsen, MO & Vinter, B 2019, Bohrium.rb - The Ruby front end. i JB Pedersen, K Chalmers, JF Broenink, B Vinter, K Vella, PH Welch, ML Smith & K Skovhede (red), Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). IMIA and IOS Press, Concurrent Systems Engineering Series, bind 70, s. 335-346, 39th WoTUG Conference on Communicating Process Architectures, CPA 2017 and 40th WoTUG Conference on Communicating Process Architectures, CPA 2018, Dresden, Tyskland, 19/08/2018. https://doi.org/10.3233/978-1-61499-949-2-335

APA

Larsen, M. O., & Vinter, B. (2019). Bohrium.rb - The Ruby front end. I J. B. Pedersen, K. Chalmers, J. F. Broenink, B. Vinter, K. Vella, P. H. Welch, M. L. Smith, & K. Skovhede (red.), Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40) (s. 335-346). IMIA and IOS Press. Concurrent Systems Engineering Series Bind 70 https://doi.org/10.3233/978-1-61499-949-2-335

Vancouver

Larsen MO, Vinter B. Bohrium.rb - The Ruby front end. I Pedersen JB, Chalmers K, Broenink JF, Vinter B, Vella K, Welch PH, Smith ML, Skovhede K, red., Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). IMIA and IOS Press. 2019. s. 335-346. (Concurrent Systems Engineering Series, Bind 70). https://doi.org/10.3233/978-1-61499-949-2-335

Author

Larsen, Mads Ohm ; Vinter, Brian. / Bohrium.rb - The Ruby front end. Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). red. / Jan Baekgaard Pedersen ; Kevin Chalmers ; Jan F. Broenink ; Brian Vinter ; Kevin Vella ; Peter H. Welch ; Marc L. Smith ; Kenneth Skovhede. IMIA and IOS Press, 2019. s. 335-346 (Concurrent Systems Engineering Series, Bind 70).

Bibtex

@inproceedings{54877d9f38424fbba15701db4de8d5d6,
title = "Bohrium.rb - The Ruby front end",
abstract = "The acceptance of Ruby in the scientific community lags a bit behind, partly because it is missing a good library for linear algebra and vector programming. It has a matrix class in its standard library, but its execution tends to be rather slow. Only a couple of actual scientific computing libraries like NumPy for Python exist for Ruby. In this paper we introduce a new library called Bohrium.rb. Bohrium.rb acts as a front end for the Bohrium framework, which generates and runs JIT-compiled OpenMP/OpenCL kernels. It currently supports Python/NumPy and C++, however as it is built of processes communicating hierarchically to each other, we can replace the front ends with new ones. This new Ruby front end is described with examples and is then compared to the standard library and an already established Ruby library Numo/Narray, where Bohrium.rb seems to be faster for still larger matrix calculations. This is also the trend we have seen in similar areas with Bohrium, being faster once its overhead has been amortized.",
keywords = "Bohrium, JIT-compile, OpenCL, OpenMP, Parallel computing, Ruby",
author = "Larsen, {Mads Ohm} and Brian Vinter",
year = "2019",
doi = "10.3233/978-1-61499-949-2-335",
language = "English",
series = "Concurrent Systems Engineering Series",
publisher = "IMIA and IOS Press",
pages = "335--346",
editor = "Pedersen, {Jan Baekgaard} and Kevin Chalmers and Broenink, {Jan F.} and Brian Vinter and Kevin Vella and Welch, {Peter H.} and Smith, {Marc L.} and Kenneth Skovhede",
booktitle = "Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40)",
note = "39th WoTUG Conference on Communicating Process Architectures, CPA 2017 and 40th WoTUG Conference on Communicating Process Architectures, CPA 2018 ; Conference date: 19-08-2018 Through 22-08-2018",

}

RIS

TY - GEN

T1 - Bohrium.rb - The Ruby front end

AU - Larsen, Mads Ohm

AU - Vinter, Brian

PY - 2019

Y1 - 2019

N2 - The acceptance of Ruby in the scientific community lags a bit behind, partly because it is missing a good library for linear algebra and vector programming. It has a matrix class in its standard library, but its execution tends to be rather slow. Only a couple of actual scientific computing libraries like NumPy for Python exist for Ruby. In this paper we introduce a new library called Bohrium.rb. Bohrium.rb acts as a front end for the Bohrium framework, which generates and runs JIT-compiled OpenMP/OpenCL kernels. It currently supports Python/NumPy and C++, however as it is built of processes communicating hierarchically to each other, we can replace the front ends with new ones. This new Ruby front end is described with examples and is then compared to the standard library and an already established Ruby library Numo/Narray, where Bohrium.rb seems to be faster for still larger matrix calculations. This is also the trend we have seen in similar areas with Bohrium, being faster once its overhead has been amortized.

AB - The acceptance of Ruby in the scientific community lags a bit behind, partly because it is missing a good library for linear algebra and vector programming. It has a matrix class in its standard library, but its execution tends to be rather slow. Only a couple of actual scientific computing libraries like NumPy for Python exist for Ruby. In this paper we introduce a new library called Bohrium.rb. Bohrium.rb acts as a front end for the Bohrium framework, which generates and runs JIT-compiled OpenMP/OpenCL kernels. It currently supports Python/NumPy and C++, however as it is built of processes communicating hierarchically to each other, we can replace the front ends with new ones. This new Ruby front end is described with examples and is then compared to the standard library and an already established Ruby library Numo/Narray, where Bohrium.rb seems to be faster for still larger matrix calculations. This is also the trend we have seen in similar areas with Bohrium, being faster once its overhead has been amortized.

KW - Bohrium

KW - JIT-compile

KW - OpenCL

KW - OpenMP

KW - Parallel computing

KW - Ruby

U2 - 10.3233/978-1-61499-949-2-335

DO - 10.3233/978-1-61499-949-2-335

M3 - Article in proceedings

AN - SCOPUS:85082386352

T3 - Concurrent Systems Engineering Series

SP - 335

EP - 346

BT - Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40)

A2 - Pedersen, Jan Baekgaard

A2 - Chalmers, Kevin

A2 - Broenink, Jan F.

A2 - Vinter, Brian

A2 - Vella, Kevin

A2 - Welch, Peter H.

A2 - Smith, Marc L.

A2 - Skovhede, Kenneth

PB - IMIA and IOS Press

T2 - 39th WoTUG Conference on Communicating Process Architectures, CPA 2017 and 40th WoTUG Conference on Communicating Process Architectures, CPA 2018

Y2 - 19 August 2018 through 22 August 2018

ER -

ID: 241090488