Bohrium: A virtual machine approach to portable parallelism

Mads R.B. Kristensen, Simon A.F. Lund, Troels Blum, Kenneth Skovhede, Brian Vinter

17 Citations (Scopus)

Abstract

In this paper we introduce, Bohrium, a runtime-system for mapping vector operations onto a number of different hardware platforms, from simple multi-core systems to clusters and GPU enabled systems. In order to make efficient choices Bohrium is implemented as a virtual machine that makes runtime decisions, rather than a statically compiled library, which is the more common approach. In principle, Bohrium can be used for any programming language but for now, the supported languages are limited to Python, C++ and the. Net framework, e.g. C# and F#. The primary success criteria are to maintain a complete abstraction from low-level details and to provide efficient code execution across different, current and future, processors. We evaluate the presented design through a setup that targets a multi-core CPU, an eight-node Cluster, and a GPU, all preliminary prototypes. The evaluation includes three well-known benchmark applications, Black Sholes, Shallow Water, and N-body, implemented in C++, Python, and C# respectively.

Original languageEnglish
Title of host publicationProceedings - IEEE 28th International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2014
Number of pages10
PublisherIEEE Computer Society Press
Publication date27 Nov 2014
Pages312-321
Article number6969406
ISBN (Electronic)9780769552088
DOIs
Publication statusPublished - 27 Nov 2014
Event28th IEEE International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2014 - Phoenix, United States
Duration: 19 May 201423 May 2014

Conference

Conference28th IEEE International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2014
Country/TerritoryUnited States
CityPhoenix
Period19/05/201423/05/2014
SponsorIEEE Computer Society Technical Committee on Parallel Processing
SeriesProceedings of the International Parallel and Distributed Processing Symposium, IPDPS
ISSN1530-2075

Keywords

  • GPU
  • Heterogeneous Computing
  • High-Productivity
  • Parallel Programming Environment

Fingerprint

Dive into the research topics of 'Bohrium: A virtual machine approach to portable parallelism'. Together they form a unique fingerprint.

Cite this