We describe Lapedo, a novel library of hybrid parallel skeletons for programming heterogeneous multi-core/many-core CPU/GPU sys- tems in Erlang. Lapedo’s hybrid skeletons comprise a mixture of CPU and GPU components, allowing skeletons to be flexibly and dynamically mapped to available resources. We also describe a model for deriving near-optimal division of work between CPUs and GPUs, ensuring load balancing between resources. Finally, we evaluate the effectiveness of Lapedo on three realistic use cases from different domains, demonstrating significant speedups compared to executing the same application on only CPU cores or a GPU.Postprin
Widely adumbrated as patterns of parallel computation and communication, algorithmic skeletons intro...
Hybrid computer systems combine compute units (CUs) of different nature like CPUs, GPUs and FPGAs. S...
Algorithmic skeletons simplify software development: they abstract typical patterns of parallelism a...
<p>We describe Lapedo, a novel library of hybrid parallel skeletons for programming heterogeneous mu...
We describe Lapedo, a novel library of hybrid parallel skeletons for programming heterogeneous multi...
This research has been generously supported by the European Union Framework 7 Para-Phrase project (I...
High performance architectures are increasingly heterogeneous with shared and distributed memory co...
In this paper, we present a hybrid execution backend for the skeleton programming framework SkePU. T...
The trend in computer architectures has for several years been heterogeneous systems consisting of a...
In this paper, we present a hybrid execution backend for the skeleton programming framework SkePU. T...
This paper presents a new technique for introducing and tuning parallelism for heterogeneous shared-...
The Graphics Processing Unit (GPU) is present in almost every modern day personal computer. Despite...
In this chapter, we present a hybridization methodology for the development of linear algebra softwa...
Heterogeneous computer systems are ubiquitous in all areas of computing, from mobile to high-perfor...
Algorithmic skeletons (`skeletons') abstract commonly-used patterns of parallel computation, communi...
Widely adumbrated as patterns of parallel computation and communication, algorithmic skeletons intro...
Hybrid computer systems combine compute units (CUs) of different nature like CPUs, GPUs and FPGAs. S...
Algorithmic skeletons simplify software development: they abstract typical patterns of parallelism a...
<p>We describe Lapedo, a novel library of hybrid parallel skeletons for programming heterogeneous mu...
We describe Lapedo, a novel library of hybrid parallel skeletons for programming heterogeneous multi...
This research has been generously supported by the European Union Framework 7 Para-Phrase project (I...
High performance architectures are increasingly heterogeneous with shared and distributed memory co...
In this paper, we present a hybrid execution backend for the skeleton programming framework SkePU. T...
The trend in computer architectures has for several years been heterogeneous systems consisting of a...
In this paper, we present a hybrid execution backend for the skeleton programming framework SkePU. T...
This paper presents a new technique for introducing and tuning parallelism for heterogeneous shared-...
The Graphics Processing Unit (GPU) is present in almost every modern day personal computer. Despite...
In this chapter, we present a hybridization methodology for the development of linear algebra softwa...
Heterogeneous computer systems are ubiquitous in all areas of computing, from mobile to high-perfor...
Algorithmic skeletons (`skeletons') abstract commonly-used patterns of parallel computation, communi...
Widely adumbrated as patterns of parallel computation and communication, algorithmic skeletons intro...
Hybrid computer systems combine compute units (CUs) of different nature like CPUs, GPUs and FPGAs. S...
Algorithmic skeletons simplify software development: they abstract typical patterns of parallelism a...