We introduce a library supporting execution of data parallel kernels on GPUs from Erlang. The library provides calls with the same semantics of the map and fold functions of the lists Erlang library, where the functions to be computed on the input list(s) are actually provided as OpenCL C kernels. The map and reduce (fold) higher order functions are provided in such a way that subsequent calls may leave temporary data (partial results) on the GPU memory while computing complex, possibly composed data parallel patterns. In addition, data transfers to and from the GPU, from and to the Erlang subsystem, are overlapped with Erlang to C and C to Erlang marshaling, such that the cost of the overall type conversion is minimized. We assess the performances of the data parallel library via simple synthetic benchmarks and real application kernels showing substantial speedups with respect to pure Erlang implementation of the same synthetic benchmarks/application kernels

Data parallel patterns in Erlang/OpenCL

DANELUTTO, MARCO;
2016-01-01

Abstract

We introduce a library supporting execution of data parallel kernels on GPUs from Erlang. The library provides calls with the same semantics of the map and fold functions of the lists Erlang library, where the functions to be computed on the input list(s) are actually provided as OpenCL C kernels. The map and reduce (fold) higher order functions are provided in such a way that subsequent calls may leave temporary data (partial results) on the GPU memory while computing complex, possibly composed data parallel patterns. In addition, data transfers to and from the GPU, from and to the Erlang subsystem, are overlapped with Erlang to C and C to Erlang marshaling, such that the cost of the overall type conversion is minimized. We assess the performances of the data parallel library via simple synthetic benchmarks and real application kernels showing substantial speedups with respect to pure Erlang implementation of the same synthetic benchmarks/application kernels
2016
978-161499620-0
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11568/843619
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact