Skip to content
biddisco edited this page Jun 20, 2013 · 18 revisions

Welcome to the SummerSchool2013 wiki!


This page defines exercises for the the CSCS-USI 2013 summer school. We would like participants to work in pairs on the exercises, and will try our best to match stronger programmers with less strong ones.


Software Engineering component (July 8 - 9)

*Git tutorial exercise

*CMake tutorial excersize

*Algorithmic tutorial excersize

General instructions for using the Cray XK7 "Todi"

Wireless network: connect to "cscs", use password supplied during lecture.

  • Log into Todi:

ssh -Y todi # -Y allows X protocol

At this point you are on log-in node; cross-compiled code will not run here, but rather only on a "compute node"

  • Load the module with the GIT version control system

module load git

  • Swap in the GNU programming environment

module swap PrgEnv-cray PrgEnv-gnu

  • Allocate 1 compute node for your work (valid for one hour). This should suffice for one exercise.

salloc -N 1

With this allocation you should be able to compile and run software interactively. One node provides 16 CPU cores, e.g., for 16 MPI processes each with a single thread, one process with 16 threads, eight processes with two threads each, etc.

  • Later in the course you may experiment with the code distributed over multiple nodes, e.g.,

salloc -N 4

4 nodes will sensibly support up to 64 mpi processes, or a combination of processes or threads (but still with maximum 16 threads per nodes, since threads must be in a shared memory space).

A baseline branch of the code has been created

  1. Create your own branch of this repository

  2. Each of you will get

It contains, for example, a lengthy segment of code to define a progress bar. This would be much better put into an include file.

Exercise: Algorithmic changes to the Tsunami code

Clone this wiki locally