===================
In-Person Tutorials
===================

Upcoming tutorials

-  :any:`2023_meeting`
-  Please contact us at petsc-maint@mcs.anl.gov if you are interested in hosting a tutorial.

Previous tutorials

-  "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 <https://ecpannualmeeting.com/>`__, Jan 2019 (Alp, Hong,
   Matt, Rich, Todd)
   `Slides1 <https://www.mcs.anl.gov/petsc/documentation/tutorials/ECP19/ECP19_Intro_Solvers.pdf>`__
   `Slides2 <https://www.mcs.anl.gov/petsc/documentation/tutorials/ECP19/ECP19_TS.pdf>`__
   `Slides3 <https://www.mcs.anl.gov/petsc/documentation/tutorials/ECP19/ECP19_TAO.pdf>`__
   `Slides4 <https://www.mcs.anl.gov/petsc/documentation/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 <TutorialCEMRACS2016.pdf>`__
   `Video <https://www.youtube.com/watch?v=P5Iwwhbnwxk>`__
-  PETSc Tutorial at the `PETSc-20 anniversary conference and
   workshop <../../petsc-20>`__
-  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 <BuffaloTutorial.pdf>`__
-  PETSc Tutorial at the Imperial College, London, UK, March 19 2014
   (Matt) `Slides <ParisTutorial.pdf>`__
-  `PETSc Tutorial <https://www.msi.umn.edu/tutorial/946>`__ at the
   Minnesota Supercomputing Institute, University of Minnesota,
   Minneapolis MN, September 30 2013 (Matt)
   `Slides <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 <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) <http://www.scs.org/springsim/2013/HPC>`__, 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 <ACTSTutorial2012.pdf>`__,
   `Hands-On <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 <UTAustinTutorial2011.pdf>`__
-  Tutorial at `ACTS <http://acts.nersc.gov/events/Workshop2011>`__,
   Berkeley, CA, August 2011 (Jed) `Slides <20110817-ACTS.pdf>`__,
   `Video <https://www.youtube.com/watch?v=FD6tWAgQE6c>`__
-  `What's New in PETSc? <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 <ARSC2010.pdf>`__.
-  Short Course at the Graduate University, Chinese Academy of
   Sciences, Beijing, China, July 2010 (Matt)
   `Slides <GUCASTutorial10.pdf>`__.
-  `New developments, memory performance, and algorithmic
   experimentation. <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 <CSCS2010.pdf>`__. Tutorial code
-  Short Course at the Graduate University, Chinese Academy of
   Sciences, Beijing, China, July 2009 (Matt)
   `Slides <GUCASTutorial09.pdf>`__
-  Tutorial at TACC, Austin, TX, May 2009 (Matt)
   `Slides <TACCTutorial2009.pdf>`__
-  Tutorial at TACC, Austin, TX, July 2008 (Matt)
   `Slides <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 <ACTS2007.pdf>`__
-  Parallel CFD, Antalya, Turkey, May 2007 (Matt)
   `Slides <PCFD2007.pdf>`__
-  CCT at LSU, Baton Rouge, LA, April 2007 (Hong)
   `Slides <PETSc-CCT07.pdf>`__
-  Lorena Barba's SCAT Summer School, Valparaiso, Chile, January
   2007, (Matt) `Slides <SCAT2007.pdf>`__
-  David Keyes' Columbia class, New York City, October 2006 (Matt)
   `Slides <Columbia06.pdf>`__
-  ACTS `NERSC <https://www.nersc.gov/>`__, Berkeley, CA, August
   2006, (Matt) `Slides <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 <SCAT-Tut06.pdf>`__
-  Parallel Implementation of PETSc Finite Element Code, Clemson
   University, May 2006. (J.K. Houchins)
   `Slides <jhouchins_writeup_revised.pdf>`__
-  `SIAM Parallel Processing
   Conference <http://www.siam.org/meetings/pp06/shortcourse.htm>`__,
   February 2006, San Francisco(Barry) `Slides <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 <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 <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)