Introduction to High-Performance Scientific Computing

I have written a textbook with both theory and practical tutorials in the theory and practice of high performance computing. This book is released under a CC-BY license, thanks to a gift from the Saylor Foundation.

Printed copies are for sale from

Get your free pdf download here. Public repo TBA.


Table of contents of the HPC book:

  • Single processor computer architecture
  • Parallel computer architecture
  • Computer arithmetic
  • Numerical treatment of differential equations
  • Numerical linear algebra
  • High performance linear algebra
  • Combinatorics
  • Tutorials on LaTeX, Unix, Compilers, Make, Source code control

Experimental html version.

Check out my MPI/OpenMP/Petsc book. Pdf downloads. It also has an html version. Public repository.

My latest project is a C++/Fortran2008 book. Pdf downloads. It contains some nifty programming assignments:

Kudos for the HPC book: “this is a monumental achievement” [Cray Inc], “This is an excellent, expertly crafted, highly readable book that is the best snapshot of the state of HPC that I have seen in many years.” [Intel Corp], “comprehensive overview of high performance computing that excellently balances theory and application” [Simulation Consultant]. "superb, a bible for sci.computing" [University of Tennessee]

This book was originally designed for the SSC 335/394 “Introduction to Scientific and Technical Computing” course at UT. Right now it is listed as textbook or recommended reading by the following:
Pasted Graphic

  • Michigan State University CMSE 822: Parallel Computing (primary course material)
  • University of Maryland, AMSC/CMSC 662 (official textbook)
  • University of Utah, CS6230 Parallel Computing and HPC for Scientific Computing and Data Science (textbook)
  • Pontificia Universidad Catolica de Chile, IMT2112 (textbook)
  • University of Liege, INFO 0939 (official textbook)
  • University of New Mexica, Math/CS 471 (textbook)
  • San Diego State University, COMP 696 (primary textbook)
  • UC Boulder APPM 4720/5720 (textbook)
  • University of Texas at El Paso, CPS 5401 (textbook)
  • NYU school of medicine, HPC in biomedical (required reading)
  • Los Alamos, Information Science and Technology Institute (recommended reading)
  • Brigham Young University IT 515R Scientific Computing
  • Gordon College, CPS371
  • University of Bath, CM30225
  • Illinois Institute of Technology, CS595
  • ETH / Swiss National Supercomputer Center
  • University Duisburg Essen, HPC 2014/2015
  • University of Notre Dame, ACMS60212/40212
  • Technische Universitat Munchen, Informatics V
  • University of Tennessee, Knoxville: CS 594-4, M578
  • Computation Institute, University of Chicago
  • Purdue University, CS 50100
  • University of New South Wales, Math3101/Math5305
  • University of Connecticut, Physics 2200
  • University of Tartu, Scientific Computing MTAT.08.010
  • Weierstrass Institute for Applied Analysis and Stochastics Berlin, Scientific Computing course
  • University of Pittsburgh, math 1070/1080
  • University of British Columbia, COSC 407
  • Georgia Tech, CSE 8803HNC
  • Sabanci Universitesi, CS 531
  • University of Bath, CM30225 Parallel Computing

The MPI/OpenMP book is used or referenced here:
  • University of Utah, CS6230 Parallel Computing and HPC for Scientific Computing and Data Science (textbook)
  • ETH Zurich, HPCSE I, 2017 (textbook)
  • RWTH Aache: HPAC WS 16/17
  • Vi-SEEM 2017
  • San Diego State University, COMP/CS 605 (suggested reading)
  • Institute of Plasma Physics, Chinese Academy of Sciences
  • Gordon College CPS343
  • University of Illinois, Computer Science, HPC Fall 2012
  • ACM/SIAM Student Chapter KAUST | 2017

(image: Victor teaching a short course at Shanghai Jiao Tong University. If you want Victor to teach at your institution, contact him by the link below.)

Title = {Introduction to High Performance Scientific Computing},
Author = {{Victor Eijkhout with Robert van de Geijn and Edmond Chow}},
Publisher = {},
Year = {2011},
Note = {\url{}},
Abstract = {\url{}, also downloadable from \url{}},
ISBN = {978-1-257-99254-6},

Permalink to this page