(tutorials)=

# In-Person Tutorials

Upcoming tutorials

- Please contact us at <mailto:petsc-maint@mcs.anl.gov> if you are interested in hosting a tutorial.

Previous tutorials

- SIAM Geosciences 2025 [Slides](https://cse.buffalo.edu/~knepley/presentations/TutorialSIAMGS2025.pdf)
- {any}`2025_meeting`
- "PETSc with GPUs" at the [2022 CIG Developer's Workshop](https://geodynamics.hubzero.org/events/details/259) ([slides and source](https://gitlab.com/psanan/petsc-gpu-cig-2022-02-28)).
- PETSc Tutorial at NASA Langley Research Center, March 2019 (Oana, Barry)
- PETSc Tutorial at the ECP Annual Meeting, Jan 2019 (Alp, Hong, Matt, Rich, Todd)
  [Slides1](https://petsc.gitlab.io/tutorials/tutorials/ECP19/ECP19_Intro_Solvers.pdf)
  [Slides2](https://petsc.gitlab.io/tutorials/tutorials/ECP19/ECP19_TS.pdf)
  [Slides3](https://petsc.gitlab.io/tutorials/tutorials/ECP19/ECP19_TAO.pdf)
  [Slides4](https://petsc.gitlab.io/tutorials/tutorials/ECP19/ECP19_Adjoint.pdf)
- PETSc Tutorial at [Memorial University AARMS Workshop on Scientific Computing Software](https://www.math.mun.ca/~smaclachlan/anasc_petsc/),
  May 2017 (Jed)
  [Slides](https://jedbrown.org/files/201705-MUNPETSc.pdf)
- PETSc Tutorial at the [CEMRACS 2016](http://smai.emath.fr/cemracs/cemracs16/) in Marseille
  (Matt) [Slides](https://petsc.gitlab.io/tutorials/tutorials/TutorialCEMRACS2016.pdf)
  [Video](https://www.youtube.com/watch?v=P5Iwwhbnwxk)
- PETSc Tutorial at the [PETSc-20 anniversary conference and workshop](https://petsc.gitlab.io/annual-meetings/2015/index.html)
- PETSc Tutorial at IT4I, Ostrava, Czech Republic, May 21-22, 2015
  (Jed)
- Intro to Parallel Algebraic Solvers using PETSc, UC Merced, Oct
  31, 2014 (Jed)
  [Slides](https://jedbrown.org/files/20141031-PETSc.pdf)
- PETSc Tutorial at the SUNY Buffalo, Buffalo, NY, April 22 2014
  (Matt and Jed) [Slides](https://petsc.gitlab.io/tutorials/tutorials/BuffaloTutorial.pdf)
- PETSc Tutorial at the Imperial College, London, UK, March 19 2014
  (Matt) [Slides](https://petsc.gitlab.io/tutorials/tutorials/ParisTutorial.pdf)
- PETSc Tutorial at the
  Minnesota Supercomputing Institute, University of Minnesota,
  Minneapolis MN, September 30 2013 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/MSITutorial.pdf)
- PETSc Tutorial/Implicit Solvers, [PRACE Summer School](http://events.prace-ri.eu/conferenceDisplay.py?confId=140),
  Ostrava, Czech Republic, June 2013 (Jed)
  [Slides](https://59a2.org/files/20130618-PRACE.pdf)
- Advanced PETSc Tutorial, [Maison de la
  Simulation](http://www.maisondelasimulation.fr/), Orsay,
  France, June 2013 (Matt) [Slides](https://petsc.gitlab.io/tutorials/tutorials/ParisTutorial.pdf)
- Tutorial (ViennaCL & PETSc) at [FEMTEC 2013](http://femtec2013.femhub.com/) Las Vegas, NV, May 2013
  (Karl)
  [Slides](https://www.karlrupp.net/wp-content/uploads/2013/05/FEMTEC2013-tutorial.pdf)
- PETSc at the [Second National Workshop on High Performance Computing for Scientific Applications (WHPC13)](http://ccad.unc.edu.ar/whpc13/), Cordoba, Argentina,
  May 2013 (Karl) [Slides 1](https://www.karlrupp.net/wp-content/uploads/2013/05/WHPC13-part1.pdf),
  [Slides 2](https://www.karlrupp.net/wp-content/uploads/2013/05/WHPC13-part2.pdf),
  [Slides 3](https://www.karlrupp.net/wp-content/uploads/2013/05/WHPC13-part3.pdf),
  [Tutorial code](https://github.com/karlrupp/whpc13)
- Tutorial at the 21st High Performance Computing Symposia (HPC'13), San Diego,
  CA, April 2013 (Karl)
  [Slides](https://www.karlrupp.net/wp-content/uploads/2013/05/HPC2013.pdf)
- Tutorial at [ACTS](http://acts.nersc.gov/events/Workshop2012),
  Berkeley, CA, August 2012 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/ACTSTutorial2012.pdf),
  [Hands-On](https://petsc.gitlab.io/tutorials/tutorials/ACTSHandsOn2012.pdf)
- Advanced PETSc, TACC, Feb 20, 2012 (Jed).
  [Video](https://meeting.austin.utexas.edu/p3jyp6jut4e/).
  [Slides](https://59a2.org/files/20120220-TACC.pdf).
<!--
- Introduction to PETSc, TACC, Jan 17, 2012 (Victor Eijkhout).
  [Slides](http://www.tacc.utexas.edu/c/document_library/get_file?uuid=802633ce-f165-407f-bec8-f0efca556e20&groupId=13601).
-->
- Tutorial at ICES, UT Austin, TX September 2011 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/UTAustinTutorial2011.pdf)
- Tutorial at [ACTS](http://acts.nersc.gov/events/Workshop2011),
  Berkeley, CA, August 2011 (Jed) [Slides](https://petsc.gitlab.io/tutorials/tutorials/20110817-ACTS.pdf),
  [Video](https://www.youtube.com/watch?v=FD6tWAgQE6c)
- [What's New in PETSc?](https://petsc.gitlab.io/tutorials/tutorials/Speedup10.pdf) from 39th Speedup
  Conference, ETH Zurich, Switzerland, September 2010
- Short course at the Arctic Region Supercomputing Center, Fairbanks
  Alaska, August 2010 (Jed). [Slides](https://petsc.gitlab.io/tutorials/tutorials/ARSC2010.pdf).
- Short Course at the Graduate University, Chinese Academy of
  Sciences, Beijing, China, July 2010 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/GUCASTutorial10.pdf).
- [New developments, memory performance, and algorithmic experimentation.](https://petsc.gitlab.io/tutorials/tutorials/NOTUR2010.pdf) at the ninth annual meeting on
  High Performance Computing and Infrastructure for computational
  science in Norway (NOTUR), Bergen, May 2010 (Jed)
- Short course at the Swiss National Supercomputing Center, Manno,
  May 2010 (Jed). [Slides](https://petsc.gitlab.io/tutorials/tutorials/CSCS2010.pdf). Tutorial code
- Short Course at the Graduate University, Chinese Academy of
  Sciences, Beijing, China, July 2009 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/GUCASTutorial09.pdf)
- Tutorial at TACC, Austin, TX, May 2009 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/TACCTutorial2009.pdf)
- Tutorial at TACC, Austin, TX, July 2008 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/TACC2008.pdf)
- Tutorial at ACTS [NERSC](https://www.nersc.gov/), Berkeley, CA,
  August 2008 (Satish)
- ACTS [NERSC](https://www.nersc.gov/), Berkeley, CA, August 2007
  (Matt) [Slides](https://petsc.gitlab.io/tutorials/tutorials/ACTS2007.pdf)
- Parallel CFD, Antalya, Turkey, May 2007 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/PCFD2007.pdf)
- CCT at LSU, Baton Rouge, LA, April 2007 (Hong)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/PETSc-CCT07.pdf)
- Lorena Barba's SCAT Summer School, Valparaiso, Chile, January
  2007, (Matt) [Slides](https://petsc.gitlab.io/tutorials/tutorials/SCAT2007.pdf)
- David Keyes' Columbia class, New York City, October 2006 (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/Columbia06.pdf)
- ACTS [NERSC](https://www.nersc.gov/), Berkeley, CA, August
  2006, (Matt) [Slides](https://petsc.gitlab.io/tutorials/tutorials/ACTS2006/ACTS2006.pdf)
- LCRC PETSc Tutorial, Argonne National Laboratory, August 2006
  (Barry)
- [Scientific Computing Advanced Training](http://www.scat.bristol.ac.uk) Daresbury
  Laboratory,June 2006, (Barry) [Slides](https://petsc.gitlab.io/tutorials/tutorials/SCAT-Tut06.pdf)
- Parallel Implementation of PETSc Finite Element Code, Clemson
  University, May 2006. (J.K. Houchins)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/jhouchins_writeup_revised.pdf)
- [SIAM Parallel Processing Conference](http://www.siam.org/meetings/pp06/shortcourse.htm),
  February 2006, San Francisco(Barry) [Slides](https://petsc.gitlab.io/tutorials/tutorials/PetscTu06.pdf)
- Machine Learning Tools Satellite Workshop at the [Neural Information Processing Systems](http://nips.cc/Conferences/2005/), Vancouver, December
  2005 (Barry)
- 5 hour course; ACTS Workshop, [NERSC](https://www.nersc.gov/),
  August 2005 (Matt)
- 6 hour course; University of Houston, Houston, Texas, April 2005
  (Matt)
- Whole day course at INL, February 2005, (Matt)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/INL05/tutorial.pdf)
- 6 hour course, including 3 hours devoted to multigrid and domain
  decomposition with PETSc. [Columbia University, New York City](https://cims.nyu.edu/dd16/tutorials.html), January 2005,
  (Barry, Matt, Dinesh, Bill)
  [Slides](https://petsc.gitlab.io/tutorials/tutorials/Columbia04/DDandMultigrid.pdf)
- 2-day PETSc short course in conjunction with the International
  Parallel CFD 2004 Conference, Gran Canaria, Canary Islands, Spain,
  May 2004 (Matt, Kris)
- At the Workshop on the ACTS Toolkit at
  [NERSC](https://www.nersc.gov/), August 2003 (Bill, David)
- At the 15th Annual Domain Decomposition Meeting, Freie Universität
  Berlin (FUB), July 2003 (Bill, David)
- At the Workshop on the ACTS Toolkit at
  [NERSC](https://www.nersc.gov/), September 2002 (Barry, Kris)
- 3 day tutorial as part of the Parallel Computing Workshop, Center
  for Computational Science and Engineering, Peking University,
  Beijing, China, July 1-August 2, 2002, (Bill)
- 1/2-day PETSc tutorial as part of a Workshop on the ACTS Toolkit
  at [NERSC](https://www.nersc.gov/), October 2001 (Lois, Satish)
- 2-day PETSc tutorial on the Access Grid, October 2000 (Barry,
  Satish)
- 2-day tutorial on PETSc, including its support for domain
  decomposition and multigrid, Lyon, France, October 2000 (Bill)
- 1/2-day PETSc tutorial at a Workshop on the ACTS Toolkit at
  [NERSC](https://www.nersc.gov/), September 2000 (Lois, Satish)
- 1/2-day PETSc short course: Williamsburg, Virginia, in conjunction
  with the International Parallel CFD 1999 Conference, May 1999
  (Lois, Satish, Dinesh)
- 1-day PETSc short course: San Antonio, Texas, in conjunction with
  the Ninth SIAM Conference on Parallel Processing for Scientific
  Computing, March 1999 (Lois, Satish)
- Tutorial at Supercomputing '97 - 1/2-day November, 1997 (Barry,
  Lois, Satish)
- "Bring Your Own Code" Workshop - 3-day, with lectures and hands-on
  computer sessions, Cornell Theory Center, April, 1997 (Barry,
  Lois, Satish)
- "Bring Your Own Code" Workshop - 3-day, with lectures and hands-on
  computer sessions, ICASE, NASA Langley Research Center, December,
  1996 (Bill, Barry, Lois, Satish)
