NERSCPowering Scientific Discovery for 50 Years

An Introduction to Programming with SYCL on Perlmutter and Beyond, March 1, 2022

March 1, 2022

Introduction

SYCL is an open standard programming model that allows developers to use standard C++ code to program for a range of GPUs and other accelerator processors. This means that it is possible to develop using modern C++ code and target Nvidia, AMD and Intel GPUs from a single code base. To enable SYCL on the latest supercomputers, Codeplay has been working in partnership with different National Laboratories to bring SYCL support to Perlmutter, Polaris and Frontier. 

Join engineers from Codeplay for a half day hands-on workshop that will walk through the fundamentals of SYCL programming using practical examples and exercises to help reinforce the learning. Attendees will also learn how to compile their SYCL code using the DPC++ compiler to target Nvidia GPUs including those on the Perlmutter supercomputer. Lastly, we’ll talk about some of the things you need to know to achieve good performance, including best practices for memory management, with free time for questions and discussions.

ALCF and OLCF users are welcome to this training. NERSC training accounts will be provided if needed.

Workshop Leader: Hugh Delaney, Software Engineer, Codeplay Software

Course Outline

  • Introduction
  • Enqueuing a kernel
  • Managing data
  • Using Data Parallelism
  • Asynchronous Execution
  • Optimization Tips

Date and Time: 9:00 am - 1:00 pm (Pacific time), Tuesday, March 1, 2022

The format of this event will be online only.

Registration

Please use this form to register.

Other Information

Please join Slack for Q&A (#general channel):

https://tinyurl.com/sycl-march2022-slack

Please help us with answering the survey:
https://tinyurl.com/sycl-march2022-survey

Course Materials

Welcome slides

Lesson materials and code exercises

Video recordings