GPU Offloading Applications using Intel Software

Actions Panel

GPU Offloading Applications using Intel Software

This workshop, split over two mornings, will focus on DPC++/OpenMP usage and performance tuning for offloading on to GPUs.

By Chris Edsall

Location

Online

About this event

Dates and Times:

  • Session 1: Tues 9 Nov 09:00 - 12:30 GMT
  • Session 2: Wed 10 Nov 09:00 - 12:30 GMT

Description:

New Intel GPUs and to some extent GPUs from other vendors can be utilized by oneAPI software. Two branches can be taken to offload computation from standard C/C++ and Fortran applications.

The first choice for C++ application would be the use of DPC++ , Intel's implementation of SYCL. GPU code is also C++(with certain limitations) and will be identified by the new LLVM Clang compiler. OpenMP offloading is an alternative to that can be also applied to C and Fortran codes. By use of the target directive OpenMP codes can be transformed into GPU offloading codes. Existing OpenACC codes may be also ported to the more commonly supported OpenMP standard.

A short overview of the Intel oneAPI Toolkits will be given. Compiler options are crucial for optimal performance and thus a short introduction to optimization flags will be provided. As coding errors can be hard to find, a correctness checking tool that finds real and potential threading and offloading errors will be introduced. Finally, performance bottlenecks will be discussed and methods to detect them will be introduced.

Objective:

After attending this workshop, you will have learned:

• Typical code patterns for applying Dpc++/SYCL code and OpenMP directives for parallelizing and vectorizing loops and regions

• How to use Intel tools effectively.

• How to apply the Advisor tool for finding appropriate loops for OpenMP offloading.

• How to check the correctness and finding potential threading errors.

• How to perform different types of HPC and threading analysis as well as micro architectural analysis using Vtune.

• General tuning methodologies, common parallel bottlenecks and how to solve them.

Prerequisites:

  • An Intel DevCloud account. You can sign up here for free
  • Basic understanding of parallel programming paradigms and C/C++ or Fortran programming

Organised by

Sales Ended