Astronomy 598 Topics in Theoretical Astrophysics (Scientific Supercomputing)


Autumn 2019: Fri 11:00-12:20 Physics/Astronomy Building A210

Instructor: Pramod Gupta
psgupta *at* astro. washington. edu

Office hours: after class, or email.

Web-site: http://vpl.astro.washington.edu/users/psgupta/astro598supercomputing.html

Pre-requisites:
Students should know a programming language. Students should bring their laptop to class. If you have a windows laptop please install ssh client software on your laptop so that you can connect to hyak. Students should have a hyak account. Any UW student can get a hyak account. Instructions are at below link:

https://depts.washington.edu/uwrcc/getting-started-2/getting-started/

Syllabus:
We will use examples of scientific supercomputing from a wide variety of research areas such as Astrophysics, Biology and Chemistry.

(1) Using Linux (command line, setting up the environment, modules, file permissions, compiling programs, installing open source programs as a regular user)

(2) Using a supercomputer (scheduler, submitting jobs, GNU parallel, ckpt queue, checkpointing, interactive use, using GUI tools, storing data)

(3) Parallel programming (OpenMP, MPI, GPU, CUDA, Python multiprocessing, Parallel R, Parallel Matlab)


Grades:

Homework problems (100% of grade) will be assigned every week.


Reference Books:

Classics:
The C programming language 2nd edition
Brian W. Kernighan and Dennis M. Ritchie

The UNIX programming environment
Brian W. Kernighan and Rob Pike

Parallel Programming:
Using MPI : portable parallel programming with the message-passing interface
William Gropp, Ewing Lusk, Anthony Skjellum

Using OpenMP : portable shared memory parallel programming
Barbara Chapman, Gabriele Jost, Ruud van der Pas

Parallel programming in OpenMP
Rohit Chandra et al

MPI--the complete reference
Marc Snir et al

Parallel programming with MPI
Peter S. Pacheco