NERSCPowering Scientific Discovery Since 1974

NERSC Training Events

See also the NERSC Events Calendar.

CUDA Concurrency -- Part 7 of 9 CUDA Training Series, July 21, 2020

Introduction CUDA® is a parallel computing platform and programming model that extends C++ to allow developers to program GPUs with a familiar programming language and simple APIs. NVIDIA will present a 9-part CUDA training series intended to help new and existing GPU programmers understand the main concepts of the CUDA platform and its programming model. Each part will include a 1-hour presentation and example exercises. The exercises are meant to reinforce the material from the… Read More »

Roofline on NVIDIA GPUs Hackathon, July 8, 2020

This event has been canceled and will be rescheduled. Read More »

Arm debugging and profiling tools tutorial, June 25, 2020

NERSC is hosting a half-day training event for debugging and profiling parallel codes with Arm (previously Allinea) tools on Thursday, June 25, 2020.  We will teach and demonstrate how to use Arm's tools: Arm Forge, an integrated environment for debugging (DDT) and profiling (MAP) parallel codes. We will illustrate how Arm DDT can debug applications ranging from a single thread to large scale codes. We will illustrate how you can use Arm MAP to understand the nature of your application's… Read More »

Loop Optimizations with OpenACC -- Part 3 of 3 OpenACC Training Series, June 23, 2020

Introduction OpenACC is a directive-based approach to parallel programming for heterogeneous architectures, where developers specify regions of code (written in C, C++, and Fortran) to be offloaded from a host CPU to a GPU. This approach is meant to reduce the amount of programming effort required of developers relative to low-level models, such as CUDA. NVIDIA will present a 3-part OpenACC training series intended to help new and existing GPU programmers learn to use the OpenACC API. Each… Read More »

Managed Memory -- Part 6 of 9 CUDA Training Series, June 18, 2020

Introduction CUDA® is a parallel computing platform and programming model that extends C++ to allow developers to program GPUs with a familiar programming language and simple APIs. NVIDIA will present a 9-part CUDA training series intended to help new and existing GPU programmers understand the main concepts of the CUDA platform and its programming model. Each part will include a 1-hour presentation and example exercises. The exercises are meant to reinforce the material from the… Read More »

New User Training: June 10, 2020

NERSC is hosting a one-day training event for new users on Wednesday, June 10, 2020.  The goal is to provide users new to NERSC with the basics on our computational systems; accounts and allocations; programming environment, tools, and best practices; and data ecosystem.  This event will be presented online only using Zoom. Please see below for remote connection information.  Agenda (tentative) Time (PDT)TopicPresenters9:00 am Welcome and Introduction to NERSC Rebecca Hartman-Baker 9:30 am… Read More »

OpenACC Data Management -- Part 2 of 3 OpenACC Training Series, May 28, 2020

Introduction OpenACC is a directive-based approach to parallel programming for heterogeneous architectures, where developers specify regions of code (written in C, C++, and Fortran) to be offloaded from a host CPU to a GPU. This approach is meant to reduce the amount of programming effort required of developers relative to low-level models, such as CUDA. NVIDIA will present a 3-part OpenACC training series intended to help new and existing GPU programmers learn to use the OpenACC API. Each… Read More »

Variable-time Jobs Online Hands-On User Training, May 21, 2020

May 21, 2020

NERSC will host a 2-hour online hands-on user training on variable-time jobs Thursday May 21, 2020, from 10:00 am to 12:00 pm Pacific time. Variable-time jobs can greatly improve your queue turnaround by automatically exploiting opportunities for backfill in Slurm, provided your applications can do checkpoint and restart on their own or via an external checkpointing tool (e.g., DMTCP). The training begins with a 30 minute presentation, followed by a 1.5-hour hands-on session. Please… Read More »

CUDA Atomics, Reductions, and Warp Shuffle -- Part 5 of 9 CUDA Training Series, May 13, 2020

Introduction CUDA® is a parallel computing platform and programming model that extends C++ to allow developers to program GPUs with a familiar programming language and simple APIs. NVIDIA will present a 9-part CUDA training series intended to help new and existing GPU programmers understand the main concepts of the CUDA platform and its programming model. Each part will include a 1-hour presentation and example exercises. The exercises are meant to reinforce the material from the… Read More »

SpinUp: Apr 2020

Spin is a new Containers-as-a-Service (CaaS) platform at NERSC based on Docker container technology. It can be used to deploy web sites and science gateways, workflow managers, databases and key-value stores, and all sorts of network services that can access NERSC systems and storage on the back end. Spin is currently in a pilot phase as the NERSC Infrastructure Services Group (ISG) refines the underlying systems and tools. See the videos and other information below to learn more about its… Read More »

Introduction to OpenACC -- Part 1 of 3 OpenACC Training Series, April 17, 2020

Introduction OpenACC is a directive-based approach to parallel programming for heterogeneous architectures, where developers specify regions of code (written in C, C++, and Fortran) to be offloaded from a host CPU to a GPU. This approach is meant to reduce the amount of programming effort required of developers relative to low-level models, such as CUDA. NVIDIA will present a 3-part OpenACC training series intended to help new and existing GPU programmers learn to use the OpenACC API. Each… Read More »

Fundamental CUDA Optimization (Part 2) -- Part 4 of 9 CUDA Training Series, Apr 16, 2020

Introduction CUDA® is a parallel computing platform and programming model that extends C++ to allow developers to program GPUs with a familiar programming language and simple APIs. NVIDIA will present a 9-part CUDA training series intended to help new and existing GPU programmers understand the main concepts of the CUDA platform and its programming model. Each part will include a 1-hour presentation and example exercises. The exercises are meant to reinforce the material from the… Read More »

Data Analytics in Python on GPUs with NVIDIA RAPIDS Training (ONLINE ONLY), April 14, 2020

April 14, 2020

Introduction Perlmutter will be NERSC's very first supercomputer featuring a non-testbed GPU partition. This timely architectural shift promises to bring NERSC users many new and exciting opportunities to accelerate their science analyses, but also new challenges in terms of tools, techniques, and libraries to learn. To prepare its users to make efficient and productive use of Perlmutter's GPU partition from day one, NERSC is hosting a series of GPU training events and hackathons in 2020. … Read More »

Fundamental CUDA Optimization (Part 1) -- Part 3 of 9 CUDA Training Series, Mar 18, 2020

Introduction CUDA® is a parallel computing platform and programming model that extends C++ to allow developers to program GPUs with a familiar programming language and simple APIs. NVIDIA will present a 9-part CUDA training series intended to help new and existing GPU programmers understand the main concepts of the CUDA platform and its programming model. Each part will include a 1-hour presentation and example exercises. The exercises are meant to reinforce the material from the… Read More »

Introduction to GPU, February 28, 2020

NERSC will host a one-day training event for users on Introduction to GPU on Friday, February 28, 2020. The topics to cover are: Why GPUs, GPU architecture, DOE roadmap, and what type of applications are likely to benefit from GPU acceleration; How to use Cori GPU, where to find documentation, available compilers, how to compile and run; NVIDIA software stack; Programming for GPU using directives (OpenACC and OpenMP); Debugging and profiling on GPU.  Attendees will be given Cori GPU access to… Read More »

CUDA Shared Memory -- Part 2 of 9 CUDA Training Series, Feb 19, 2020

Introduction CUDA® is a parallel computing platform and programming model that extends C++ to allow developers to program GPUs with a familiar programming language and simple APIs. NVIDIA will present a 9-part CUDA training series intended to help new and existing GPU programmers understand the main concepts of the CUDA platform and its programming model. Each part will include a 1-hour presentation and example exercises. The exercises are meant to reinforce the material from the… Read More »

SpinUp: Feb 2020

Spin is a new Containers-as-a-Service (CaaS) platform at NERSC based on Docker container technology. It can be used to deploy web sites and science gateways, workflow managers, databases and key-value stores, and all sorts of network services that can access NERSC systems and storage on the back end. Spin is currently in a pilot phase as the NERSC Infrastructure Services Group (ISG) refines the underlying systems and tools. See the videos and other information below to learn more about its… Read More »

Introduction to CUDA C++ -- Part 1 of 9 CUDA Training Series, Jan 15, 2020

January 15, 2020

Part 1 of 9 in a CUDA Training Series Introduction CUDA®  is a parallel computing platform and programming model that allows developers to program GPUs with a familiar programming language and simple APIs. NVIDIA will present a 9-part CUDA training series intended to help new and existing GPU programmers understand the main concepts of the CUDA platform and its programming model. Each part will include a 1-hour presentation and example exercises. The exercises are meant to reinforce the… Read More »