Personal tools
Sections
You are here: Home > HPC@CSC > CSC HPC training curriculum
@CSC Blogs

The bloggers are experts working at CSC - IT Center for Science Ltd. The opinions published on the blogs are their own.

Readers can comment on published blog posts. CSC or its employees are not liable for the content produced by readers.

CSC has the right to remove reader comments if they are considered to be against good morals or against the law or offensive in any other way.

 
Document Actions

CSC HPC training curriculum

Submitted by Pekka Manninen posted on 2010-07-08 15:01 last modified 2011-07-10 12:45
There will be a set of 1-3 day intense courses which will complete a "A first course in HPC", that is, a no-nonsense introduction to parallel programming and code optimization.

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.

This entry is cross-posted in the following blogs:

Software development