CSRC Summer School on Parallel Computing, June 2015

In this 4-day workshop held at the Beijing Computational Science Research Center, Leopold Grinberg and I taught about high performance computing, computer hardware, memory subsystem, MPI and OpenMP, CUDA. The workshop was arranged as a combination of lectures and hands-on practices, so that students have to chance to practice the skill and discuss with us in an interactive fashion. Check below for my tutorial and exercise on programming techniques for the CUDA general purpose graphics processing units (GPGPUs).
Slides - part I View Download Introduction on programming the CUDA GPUs
Slides - part II View Download More advanced topics on GPU architecture and optimization
Exercise View Coding examples and solutions

Stanford Summer School on Multiscale Modeling of Materials, June 2016

In this workshop sponsored by the Collaboratory on Mathematics for Mesoscopic Modeling of Materials (CM4), I gave a lecture on how to implement concurrently coupled multiphysics solvers to carry out multiscale simulations using the Multiscale Universal Interface (MUI).
Slides View Download MUI concept, design and programming guide
Demo View MUI programming demonstations