Introduction to PETSc: A Hands-on Workshop

Overview

Instructor(s): Iman Borazjani

Time: Friday, February 14, 2025 — 10:00AM-12:30PM CT

Location: Blocker 220

Prerequisite(s): Active HPRC account; proficiency in a programming language such as C, Fortran, or Python.

Are you interested in solving large linear or nonlinear systems using advanced iterative techniques on parallel computing clusters? If yes, PETSc toolkit can help.

PETSc has a wide range of solvers, including conjugate gradient, GMRES, Newton Krylov methods, and others implemented for parallel computing. In this hands-on workshop, you will learn by writing a PETSc code to solve a linear system resulting from a Poisson equation.

Course Materials

  • Introduction to PETSc Slides (Spring 2025): PDF

  • Introduction to PETSc Slides (Fall 2024): PDF

Learning Objectives and Agenda

In this class, participants will learn to:

  • Describe PETSc data structures and solvers
  • Apply PETSc's Krylov Subspace (KSP) solvers to a linear system of equations

This class will be organized as follows:

  • Overview of PETSc
  • First PETSc code: Hello World
  • Develop a code for a Poisson equation using PETSc solvers
During class, students will log into the Grace cluster to follow along with practice material and complete exercises.