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

- Introduction: slides; HPCS courses
- Deterministic particle simulation algorithms
- Survey of molecular dynamics: notes and slides
- Fast multipole method: slides; minimal complex analysis; electrostatic potential around a charged line; multipole expansion of 2d Coulomb potential; fast multipole method algorithm in 2d
- Multiple time stepping: slides

- Parallel computing frameworks
- Parallel computing basics and parallel molecular dynamics: using HPC; message passing interface (MPI); asynchronous message passing; parallel MD algorithms (notes and slides); scalability analysis of parallel molecular-dynamics and fast-multipole-method algorithms; MD machines; Shaw's MD algorithm; multithreading using OpenMP; hybrid MPI+OpenMP programming
- Divide-and-conquer parallelism: notes and slides; reproducible global sum; system support for divide-&-conquer
- Load balancing: slides; Lanczos method for eigensystems (slides and supplementary notes) used in spectral-bisection load balancer
- Optimizing parallel MD: slides; lecture note by Prof. James Demmel (UC Berkeley) on single processor machines: memory hierarchies and processor features
- New architectures: graphics processing unit (GPU) programming using CUDA;
running a hybrid MPI+CUDA program at HPC;
Intel Xeon Phi programming;
lattice-Boltzmann fluid simulation on a Playstation3 cluster;
MD simulation on GodsonT
- MIT couse on multicore programming primer: learn and compete in programming the Playstation3 cell processor (lectures and sample codes)
- CUDA tutorial by Dr. Ken-ichi Nomura at USC-HPC

- Deterministic continuum simulation algorithms
- Survey of quantum dynamics (QD): QD basics; spectral QD and fast Fourier transform (FFT); parallelizing QD (slides)
- Multiresolution numerical methods: slides; wavelets (Numerical Recipes, Sec. 13.10); multiresolution analysis using wavelets; multigrid method (Numerical Recipes, Sec. 19.6); Fermi-operator expansion for linear-scaling electronic structure calculations

- Hybrid particle/continuum simulation methods
- Multiscale simulation methods: slides

- Scientific data analysis and visualization
- Visualization basics--OpenGL programming and visualizing particles:
notes and
slides;
how to use OpenGL and GLUT with Microsoft Visual Studio;
for the visualization of quatum wave functions, see
Visualizing quantum scattering on the CM-2 supercomputer,
J. L. Richardson,
*Comput. Phys. Commun.***63**, 84 (1991) - Massive dataset visualization: slides
- Scientific data mining: slides; multiobjective genetic algorithm for in situ force-field training

- Visualization basics--OpenGL programming and visualizing particles:
notes and
slides;
how to use OpenGL and GLUT with Microsoft Visual Studio;
for the visualization of quatum wave functions, see
Visualizing quantum scattering on the CM-2 supercomputer,
J. L. Richardson,
- Stochastic simulation methods
- Monte Carlo (MC) simulation basics: MC basics; parallel MC; parallel kinetic MC simulation; kinetic MC simulation of electron transfer
- Long time dynamics and global optimization
- Stochastic continuum simulations

- Distributed scientific computing
- Grid computing basics for application scientists: slides
- Grid-enabling scientific applications
- MapReduce for cloud computing