I have been reading a presentation by Loffler et al. (2011) given at the TeraGrid 11 conference in Salt Lake City on a Graduate Course taught at Louisiana State University during Fall 2010. The course aimed to teach high-performance computing techniques, and used the TeraGrid as an integral part of the class. You may download the talk here: Using the TeraGrid to Teach Scientific Computing-1
The class covered basic skills, including Numerical Methods, Vector Algebra, Basic Visualization, and Best Programming and Software Engineering practices. These skills are used in studying Networks and Data, Simulations & Application Frameworks, Scientific Visualization and Distributed Scientific Computing.
Students were given hands-on experience at running simulation codes on the TeraGrid, including codes to model black holes, predict the effects of hurricanes and optimize oil and gas production from underground reservoirs. Here is a summary of what was taught on simulations, taken verbatim from the talk:
- What is a simulation?
- Example of an initial value problem
- Typical work-flows on supercomputers, especially TeraGrid, such as batch processing, computing time allocations and login procedures
- Usage of Cactus code: assemble, configure, build and execute across many cores within TeraGrid
- Follow Einstein Toolkit tutorial to use physics example code on TeraGrid
- Visualization of simulation results.”
This class is a very good example of the kind of class that I think needs to a mandatory part of graduate education in this era of “Big Data” astronomy.