Introduction to NVIDIA HPC SDK

Europe/Berlin
Virtual (Zoom Meeting)

Virtual

Zoom Meeting

Description

The new NVIDIA HPC SDK reshapes the diverse GPU metaprogramming approaches. With the new C++17 std::par framework developers can write Standard C++ code without any pragma directives or non-standard libraries to harness the parallelization on NVIDIA GPU automatically. Topics covered in this introduction to NVIDIA HPC SDK include:

  • use std::par in existing applications in typical software engineering scenarios
  • the new NSight Systems and NSight Compute for program profiling
  • new CUDA Fortran features and Python bindings for GPU applications

The event is organized by the competence network HPC.NRW and Paderborn Center for Parallel Computing  (PC²).

The number of seats is limited and the allocation of seats is done in a first-come-first-serve model. HPC.NRW reserves the right to the final choice of participants, if this course is oversubscribed.

This event will be held virtually via Zoom video conference. This course is free of cost for members of German universities or publicly-funded research institutions in Germany.

    • 10:00 11:30
      New NVIDIA HPC SDK for More Productive GPU Computing
      • New focuses of NVIDIA HPC SDK: performance, portability and productivity
      • How new NVIDIA HPC SDK is different from CUDA Toolkit and PGI Compiler Suite
      • C++17 std::par constructs as an alternative to OpenACC directives and CUDA Thrust
        • Essential elements: containers, iterators and lamda functions
        • Thrust-like counting iterators
        • Explicit and implicit memory transfers
      • NVIDIA HPC SDK in the programming ecosystem
        • Intermixing NVIDIA HPC SDK and CUDA Toolkit
        • CMake support for NVC++ compiler
        • Switching between std::par backends, targeting different GPUs with SyclParallelSTL
    • 11:30 13:00
      Profiling, Language and Binding Features of NVIDIA HPC SDK
      • Next generation profiling tools: NSight Systems and NSight Compute
        • Connecting Nsight profilers to remote cloud GPUs
      • Fortran 2003/2008 and CUDA Fortran in NVIDIA HPC SDK
      • Python bindings for GPU applications
        • Using NVC++ compiler to build Python API around native GPU code
        • Preparing a pybind11 wrapper for C++17 std::par and CUDA Fortran applications