Home | Syllabus | Lectures | Readings | Assignments | Codes | Links |
---|

**Course Number:** CSCI 596

**Class Number:** 30280D (lecture); 30146R (discussion)

**Instructor:**
Aiichiro Nakano;
office: VHE 610; phone: (213) 821-2657; email: anakano@usc.edu

**TA:** Kuang Liu; email: liukuang@usc.edu

**Lecture:** 3:30-4:50pm M W, THH 116

**Discussion:** 3:30-4:20pm F, VKC 100

**Office Hour:** 4:30-5:20pm F, VHE 610

**HPC Office Hour:** 2:30-5:00 pm T, LVL 3M

**Prerequisites:** Basic knowledge of programming, data structures,
linear algebra, and calculus; a nice introduction for a non-computer science student to fill the gap:
Y. Patt and S. Patel,
Introduction to Computing Systems: From Bits and Gates to C and beyond;
T. Hey and G. Papay,
The Computing Universe.

**Textbooks:**

W. D. Gropp, E. Lusk, and A. Skjellum, "Using MPI, 3rd Ed."
(MIT Press, 2014)--recommended

M. Woo, et al., "OpenGL Programming Guide, Version 4.5, 9th Ed."
(Addison-Wesley, 2016)--recommended

A. Grama, A. Gupta, G. Karypis, and V. Kumar, "Introduction to Parallel Computing, 2nd Ed."
(Addison-Wesley, 2003)--recommended

** Course Description **

Particle and continuum simulations are used as a vehicle to learn basic elements of high
performance scientific computing and visualization. Students will obtain
hands-on experience in: 1) formulating a mathematical model to describe a physical
phenomenon; 2) discretizing the model, which often consists of continuous differential
or integral equations, into algebraic forms in order to allow numerical solution on
computers; 3) designing/analyzing numerical algorithms to solve the algebraic equations
efficiently on parallel computers; 4) translating the algorithms into a program;
5) performing a computer experiment by executing the program;
6) visualizing simulation data in an immersive and interactive virtual environment;
and 7) managing/mining large datasets. For details, please see
course information sheet.

Visualization of 112 million-atom reactive molecular dynamics simulation to study high-temperature oxidation of a silicon-carbide nanoparticle on 786,432 IBM Blue Gene/Q cores.

- 8/21 (M): The class begins.
- 8/25 (F): Particle-simulation demo in virtual reality (Oculus Rift and HTC Vive) platforms at 4:30 pm in VHE 611.
- 8/25 (F): Please register by the end of Friday, so that HPC computing accounts can be requested for all students in time for the first assignment.
- 8/29 (T): Seminar on The convergence of machine learning, big data, and supercomputing by Prof. Jeremy Kepner (MIT Lincoln Lab) at 10:30 am in EEB248.
- 8/29 (T): Your HPC account is ready. You should be able to log in to hpc-login3.usc.edu using your USC ID and password. Please use the directory named as your ID under the class directory, /home/rcf-proj/an2. Please strictly follow the guidline in the lecture pages on how to use USC HPC cluster.
- 9/4 (M): No class; have a nice Labor Day.
- 9/6 (W): Special office hour for assignment 1 at 5:00pm in VHE 610.
- 9/6 (W): Please utilize CSCI596 on Piazza for discussions.
- 9/8 (F): HPC workshops: (1) guidance for new users (9:30-10:15 am, VPD 107); (2) introduction to Linux, PBS and HPC (10:30 am-12:30 pm, VPD 107); (3) introduction to HPC and cluster computing (1:30-3:30 pm, VPD 106); registration link.
- 9/8 (F): See Friday night experiments by Andre Geim.
- 9/13 (W): See quantum entanglement into space.
- 9/13 (W): Fun research on Santa Monica beach: Salt and sand.
- 9/15 (F): NASA Cassini grand finale.
- 9/15 (F): Watch Second genesis: the quest for life beyond Earth.
- 9/15 (F): Office-hour discussion on assignment 2 at 4:30 pm in VHE 610.
- 9/18 (M): (1) Lecture on parallel computation of pi + (2) Special information session by Dr. Lijun Zhang (Caltech/NASA-IPAC).
- 9/18 (M): See Chronology of computation of pi, and Alexander Yee's program running on Shigeru Kondo's homemade computer; Yee's program uses Ramanujan's series (thank you, Muye, for pointing it out), also watch The Man Who Knew Infinity if you have a chance.
- 9/18 (M): See a lecture note on recursive evaluation of a series.
- 9/20 (W): See Hyesuk's divide-&-conquer kinetic Monte Carlo paper
for an example of scalability analysis; see also
A. Slepoy et al., A constant-time kinetic Monte Carlo algorithm for simulation of large biochemical reaction networks,
*J. Chem. Phys.*,**128**, 205101 ('08). - 9/22 (F): Final project logistics discussion--please attend.
- 9/22 (F): See the syllabus of CSCI 699 (Extreme-scale Quantum Simulations) in Spring 2018.
- 9/22 (F): Watch DIY orchestra (computational music) by Prof. Ge Wang (Stanford).
- 9/22 (F): Office-hour discussion on assignment 3 at 4:30 pm in VHE 610.
- 11/27 (M), 11/29 (W), 12/1 (F): Final project presentations.
- 12/13 (W): Final project report due.