1 day aimed at participants with some experience of programming to introduce key skills of the programmer’s tool kit. The hands-on day will cover good programming practice: design, modularity, reuse, version control, documentation and testing.
This is followed by overviews of debugging, profiling, optimisation and compiler flags – for fuller training on these please see the “Profiling”, “Introduction to Optimisation”, “Introduction to Parallelism” and the OpenMP & MPI course modules.
Hands-on examples will allow participants to practise use of a debugger, of a profiler and to see how compiler flags can be used to improve performance. Successful completion of this course, provides the researcher with a tool kit, and the knowledge to use it, to solve programming problems during their career.
- introduction to thinking parallel
- getting started with FORTRAN
- the art of compilation (and how to use compilers to tell you what they're not doing but could be with your hints)
- using profilers to improve the efficiency of your parallel code
- introduction to measuring the energy consumed by your model simulation for #greenerCompute
- batch schedules and running "high throughput" eg Monte Carlo
- Using MS Azure for high end compute