CSC HPC training curriculum
CSC's HPC curriculum is a continuum of eleven course days that introduces efficient practices for usage of supercomputers. The topics include programming and scripting languages, parallel programming and code optimization. The courses consist of lectures and related exercises. The courses last from one to four days, and are lectured in English. The curriculum includes the following parts:
- CSC supercomputing environment (September 14, 2010)
This course is an introduction to efficient use of CSC's metacomputer environment: data storage, batch job systems, the Scientist's Interface. Also porting applications to the systems is addressed. - Scripting techniques (October 25, 2010)
This is a crash course to shell scripting, including Awk, Sed, Perl and Pyhton syntaxes. These techniques are very useful for data pre/post-processing and to working in the Unix environment in general. - Fortran 95/2003 workshop (October 26-27, 2010)
The Fortran workshop is a no-nonsense introduction to perhaps the most widely used HPC programming language. It provides the basic knowledge of Fortran programming and a solid base for further considerations. - Introduction to parallel programming with MPI (November 24-25, 2010)
In supercomputing, one has to employ hundreds or thousands of interconnected processors simultaneously. This course is an introduction to parallel programming using the message-passing interface paradigm, after which the participants should be able to parallelize sequential programs and write simple parallel programs. - Python for scientific computing (January 19, 2011)
This course is a more advanced treatment of Python, an easy, elegant and versatile scripting language, from the HPC point-of-view. Topics include using MPI with Python and the NumPy package for numeric computing. - Parallel programming (February 22-25, 2011)
The curriculum is concluded by a workshop that goes to more advanced topics and techniques in HPC programming. Parallel algorithms, more advanced topics in MPI, parallel I/O, as well as shared memory parallelization techniques alone and combined with MPI are discussed and exemplified. Also techniques for improving parallel scalability and performance of applications are discussed in detail.
These courses will also work as stand-alone courses. Read more and register at www.csc.fi/courses/archive/hpc-2010-2011! We would like to receive feedback on this concept and its concepts.