May 14 – 17, 2013
CSC - IT Center for Science
Europe/Helsinki timezone
This workshop will give attendees the knowledge required to understand the most optimal way to port, optimize and execute applications on the CSC Cray XC service "Sisu". The workshop is a mixture of lectures and practical sessions. Example exercises will be provided but attendees are encouraged to bring along their own applications to the workshop. Although specifically targeting the Cray architecture and programming environment much of the lessons learned with be more generally useful. The course consists of a detailed introduction to the following topics:
  • Overview of the system and its use (module system, storage, batch job system,...)
  • Compiling and porting codes to the Cray XC
  • Profiling and optimizing parallel codes
  • Program development tools and libraries on Sisu
Roughly half of the course will be devoted to hands-on work on participants' own codes.

Some parallel programming skills (MPI, Fortran/C) and fluent operation within a Unix OS will be assumed. Users who have a parallel application (third-party or written by themselves) to build from source code, will get the most out of the workshop. 


First Day (May 14)
Attendees will learn about the Cray XC architecture and its programming environment. After the day, they have their applications compiled and running on the system.
  • 10:30-10:45 Coffee and registration
  • 10:45-11:15 Introducing the course and the participants (and their codes)
  • 11:15-11:45 XC architecture overview
  • 11:45-12:15 Programming environment
  • 12:15-13:15 Lunch break
  • 13:15-13:45 Cray Scientific Libraries part I
  • 13:45-14:15 Compiling and running applications
  • 14:15-14:45 Hands-on: Porting applications
  • 14:45-15:00 Coffee break
  • 15:00-16:00 Hands-on: Porting applications
  • 16:00-16:30 Q&A, round-table on first experiences

Second Day (May 15)
Attendees will have an initial understanding of potential causes of application performance bottlenecks, and how to identify some of these bottlenecks using the Cray performance tools. The attendees will use the Cray performance tools to profile their applications. The attendees will use Cray Apprentice2 for performance visualization and will learn various optimization techniques. The attendees will start to tune their applications at the hands on lab.
  • 09:00-9:30 Using compilers
  • 09:30-10:00 Hands-on: Porting applications
  • 10:00-10:30 Introduction to performance analysis
  • 10:30-10:45 Coffee break 
  • 10:45-11:15 More about CrayPAT (incl. Live demo)
  • 11:15-12:15 Hands-on: Analysing applications
  • 12:15-13:15 Lunch break
  • 13:15-13:45 Load imbalance & rank placement
  • 13:45-14:15 MPI environment variables
  • 14:15-14:45 Hands-on: Tuning applications
  • 14:45-15:00 Coffee break
  • 15:00-16:00 Hands-on: Tuning applications
  • 16:00-16:30 Q&A, round-table on experiences

Third Day (May 16)
The attendees will learn more advanced techniques to deal with performance bottlenecks related to single CPU core, file I/O and parallel scaling. In the hands on lab the attendees will continue to tune their applications.
  • 09:00-09:30 Performance analysis: single-core
  • 09:30-10:00 Hands-on: Analysing applications
  • 10:00-10:30 Single-core optimization techniques
  • 10:30-10:45 Coffee break
  • 10:45-11:15 Single-core optimization techniques continues
  • 11:15-12:15 Hands-on: Tuning applications
  • 12:15-13:15 Lunch break
  • 13:15-13:45 Hands-on: Tuning applications
  • 13:45-14:45 I/O optimizations techniques
  • 14:45-15:00 Coffee break
  • 15:00-16:00 Hands-on: Tuning applications
  • 16:00-16:30 Q&A, round-table on experiences

Fourth Day (May 17)
An overview on further techniques and tools worth looking at, such as performance analysis with Reveal suite, debugging at scale, and emerging programming techniques for extreme scalability.
  • 09:00-09:30 Cray Scientific Libraries: IRT
  • 09:30-10.00 Live demo: Reveal
  • 10:00-10:30 Hands-on: Tuning applications
  • 10:30-10:45 Coffee break
  • 10:45-11:15 Live demo: Debugging
  • 11:15-11:45 Further things look at (PGAS, MPI 3.0 prospects, further techniques & tools...) 
  • 11:45-12:15 Q&A, round-table on experiences
  • 12:15-13:15 Lunch

Price: Free of charge

Lecturers: Pekka Manninen (Cray Inc.) and Tom Edwards (Cray Inc.)
CSC - IT Center for Science
Training room Dogmi (ground floor)
Life Science Center Keilaranta 14 Espoo, Finland
There are three hotels within a walking distance from CSC: Radisson Blu Hotel Espoo,  Sokos Hotel Tapiola Garden and Hanasaari, of which Radisson is the nearest one.
For budget hotels see e.g. Omenahotelli Helsinki, Hotel Skatta or Hotel Arthur in Helsinki city and the instructions how to get to CSC from Helsinki city.
There are no special rates for participants in any of the above mentioned hotels.
If you have any questions, please consult the course forum page or click on the support link on the left to send an email to the local organisers.