Log In Sign Up

Fast GPGPU Data Rearrangement Kernels using CUDA

by   Michael Bader, et al.

Many high performance-computing algorithms are bandwidth limited, hence the need for optimal data rearrangement kernels as well as their easy integration into the rest of the application. In this work, we have built a CUDA library of fast kernels for a set of data rearrangement operations. In particular, we have built generic kernels for rearranging m dimensional data into n dimensions, including Permute, Reorder, Interlace/De-interlace, etc. We have also built kernels for generic Stencil computations on a two-dimensional data using templates and functors that allow application developers to rapidly build customized high performance kernels. All the kernels built achieve or surpass best-known performance in terms of bandwidth utilization.


Automatic Generation of Efficient Linear Algebra Programs

The level of abstraction at which application experts reason about linea...

Fast Automatic Bayesian Cubature Using Matching Kernels and Designs

Automatic cubatures approximate integrals to user-specified error tolera...

hepaccelerate: Fast Analysis of Columnar Collider Data

At HEP experiments, processing terabytes of structured numerical event d...

I/O-Optimal Algorithms for Symmetric Linear Algebra Kernels

In this paper, we consider two fundamental symmetric kernels in linear a...

Performance Models for Data Transfers: A Case Study with Molecular Chemistry Kernels

With increasing complexity of hardwares, systems with different memory n...