Meta-programming and Multi-stage Programming for GPGPUs - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2016

Meta-programming and Multi-stage Programming for GPGPUs

Ian Masliah
  • Function : Author
  • PersonId : 996124
Marc Baboulin
Joel Falcou
  • Function : Author
  • PersonId : 937138


GPGPUs and other accelerators are becoming a mainstream asset for high-performance computing. Raising the programmability of such hardware is essential to enable users to discover, master and subsequently use accelerators in day-today simulations. Furthermore, tools for high-level programming of parallel architectures are becoming a great way to simplify the exploitation of such systems. For this reason, we have extended NT2 (Numerical Template Toolbox), a C++ scientific computing library which can generate code for SIMD and multi-threading systems in a transparent way. In this paper, we study how to introduce an accelerator-based programming model into this library to allow developers to reap the benefits of such an architecture from a simple, MATLAB like code. After a brief description of the NT2 framework, we explain how our accelerator programming model has been designed and integrated in a pure C++ library. We conclude by showing the applicability and performance of this tool on some practical applications.
Fichier principal
Vignette du fichier
atmg2016.pdf (275.99 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01416797 , version 1 (14-12-2016)



Ian Masliah, Marc Baboulin, Joel Falcou. Meta-programming and Multi-stage Programming for GPGPUs. 10th IEEE International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSOC 2016), IEEE Computer Society, Sep 2016, Lyon, France. pp.369 - 376, ⟨10.1109/MCSoC.2016.49⟩. ⟨hal-01416797⟩
385 View
163 Download



Gmail Facebook Twitter LinkedIn More