stdgpu: Efficient STL-like Data Structures on the GPU

arXiv:1908.05936, Aug. 2019
 

Abstract

Tremendous advances in parallel computing and graphics hardware opened up several novel real-time GPU applications in the fields of computer vision, computer graphics as well as augmented reality (AR) and virtual reality (VR). Although these applications built upon established open-source frameworks that provide highly optimized algorithms, they often come with custom self-written data structures to manage the underlying data. In this work, we present stdgpu, an open-source library which defines several generic GPU data structures for fast and reliable data management. Rather than abandoning previous established frameworks, our library aims to extend them, therefore bridging the gap between CPU and GPU computing. This way, it provides clean and familiar interfaces and integrates seamlessly into new as well as existing projects. We hope to foster further developments towards unified CPU and GPU computing and welcome contributions from the community.

The source code of the stdgpu library can be found at https://github.com/stotko/stdgpu .

Bilder

Paper herunterladen

Paper herunterladen

Bibtex

@UNPUBLISHED{stotko2019stdgpu,
    author = {Stotko, Patrick},
     title = {stdgpu: Efficient STL-like Data Structures on the GPU},
      year = {2019},
     month = aug,
      note = {arXiv:1908.05936},
  abstract = {Tremendous advances in parallel computing and graphics hardware opened up several novel real-time
              GPU applications in the fields of computer vision, computer graphics as well as augmented reality
              (AR) and virtual reality (VR). Although these applications built upon established open-source
              frameworks that provide highly optimized algorithms, they often come with custom self-written data
              structures to manage the underlying data. In this work, we present stdgpu, an open-source library
              which defines several generic GPU data structures for fast and reliable data management. Rather than
              abandoning previous established frameworks, our library aims to extend them, therefore bridging the
              gap between CPU and GPU computing. This way, it provides clean and familiar interfaces and
              integrates seamlessly into new as well as existing projects. We hope to foster further developments
              towards unified CPU and GPU computing and welcome contributions from the community.},
       url = {https://arxiv.org/abs/1908.05936}
}