4 Approaches to GPU Computing – Tutorial

How many ways can you program a GPU? This tutorial covers four practical methods of adding GPU acceleration to your applications. Take advantage of pre-packaged acceleration by dropping in a GPU-accelerated library to replace MKL, IPP, FFTW, or other libraries you are already using.

Use powerful, cross-platform algorithms and data structures from the Thrust library of C++ to target CUDA, TBB and OpenMP. Develop your own parallel applications and libraries using a programming language you already know like C, C++, Fortran and more. Automatically parallelize for loops in your C or Fortran code using OpenACC directives.

OpenACC is designed to support performance portable parallel programming across a wide variety of heterogeneous and parallel node configurations. Learn what that means and how it affects the programs you write today and in the future.


Bharatkumar Sharma

Bharatkumar has around 8 years of development and research experience in domain of Software Architecture, Distributed and Parallel Computing. He is currently working with Nvidia as a Senior Solution Architect, South Asia. Worked as Software Architect with expertise in designing for Non Functional Requirements and consultation for Software Migration to latest heterogeneous parallel architectures.

Bharat has received his master degree in Information Technology from Indian Institute of Information Technology (IIIT, Bangalore). He has published papers and journal articles in field of Parallel Computing and Software Architecture.