2013
DOI: 10.1007/s10766-013-0261-x
|View full text |Cite
|
Sign up to set email alerts
|

Efficient Abstractions for GPGPU Programming

Abstract: International audienceGeneral purpose (GP)GPU programming demands to couple highly parallel computing units with classic CPUs to obtain a high performance. Heterogenous systems lead to complex designs combining multiple paradigms and programming languages to manage each hardware architecture. In this paper, we present tools to harness GPGPU programming through the high-level OCaml programming language. We describe the SPOC library that allows to handle GPGPU subprograms (kernels) and data transfers between dev… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
16
0
2

Year Published

2014
2014
2022
2022

Publication Types

Select...
4
2
1

Relationship

2
5

Authors

Journals

citations
Cited by 18 publications
(18 citation statements)
references
References 7 publications
0
16
0
2
Order By: Relevance
“…If this is not the case, one has to check that the data can be adapted. Indeed, if the data do not match the highly specialized GPU architecture, this will impact the overall performance of the model (see [5] for more information on this aspect).…”
Section: Considering the Agents' Behaviorsmentioning
confidence: 99%
See 1 more Smart Citation
“…If this is not the case, one has to check that the data can be adapted. Indeed, if the data do not match the highly specialized GPU architecture, this will impact the overall performance of the model (see [5] for more information on this aspect).…”
Section: Considering the Agents' Behaviorsmentioning
confidence: 99%
“…Considering this issue, General-Purpose Computing on Graphics Units (GPGPU) is a High Performance Computing (HPC) solution which is interesting because it allows to use the massively parallel architecture of the graphics cards of usual computers for accelerating general-purpose computations in a very efficient way 1 [6,5]. However, GPGPU is strongly related with the highly specialized architecture of Graphics Processing Units (GPU) and thus implies a specific programming approach to be used efficiently.…”
Section: Introductionmentioning
confidence: 99%
“…It can be compiled to efficient native code for performance as well as to virtual machine byte-code for portability. Using OCaml, we developed the open-source 4 SPOC (Stream Processing OCaml) library [5]. To target multi-core CPUs and GPUs, it offers to use GPGPU programming via the CUDA and OpenCL frameworks.…”
Section: High Performance Gpgpu Programming In Ocamlmentioning
confidence: 99%
“…Section 3 briefly presents SPOC, that is the OCaml library that targets GPGPU programming (in classical system environments). Section 4 shows how we combined multiple tools, WebCL, SPOC [5], the js_of_ocaml compiler [13] and IOCamlJS notepad to provide a new tool that allows to Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored.…”
Section: Introductionmentioning
confidence: 99%
“…SPOC [4,5], is built upon Cuda and OpenCL. It has been developed focusing on performance but also portability and heterogeneity.…”
Section: Spoc : Stream Processing With Ocamlmentioning
confidence: 99%