You are here: Home Education DD3326

Software Development Tools for Scientific Computing (3hp)

Course announcement

The course aims at graduate students using HPC in their research project.

Its overall goal of the course is to present widely used methods, organizational aspects and best practices in the development of scientific research codes.

The course consists of parts that introduce the code development, the cooperation between and coordination of developers and the specifics of the work on high performance computer systems.


After the course students will have:

  • a good understanding of the basics of software development on Linux and High Performance Computing (HPC) systems.
  • an overview how to use of compiler flags and to use and create code libraries.
  • an understanding how to use the source code management tools to manage their projects as well as to use debuggers and profiling tools to fix bugs in the code and optimise its performance.
  • have an overview about different types of HPC system available both at PDC and around the world plus information how to use them with a specific emphasis on PDC systems.


Compiling and Linking. Organising development projects with make. Integrated Development Environments. Tools for software development (diff etc.). Debugging and Profiling. History and Future of HPC.


  • Course schedule
    • 2011-10-11, 09:00 - 12:00 Lindstedtsvägen 3, room 1537
    • 2011-10-13, 14:00 - 17:00 Lindstedtsvägen 3, room 4523
    • 2011-10-18, 09:00 - 12:00 Lindstedtsvägen 3, room 1537
    • 2011-10-20, 13:00 - 16:00 Lindstedtsvägen 3, room 1537
    • 2011-10-26, 09:00 - 12:00 Lindstedtsvägen 3, room 1537
    • 2011-10-27, 13:00 - 16:00 Lindstedtsvägen 3, room 1537


The theoretical knowledge will be evaluated by questions to answer as part of the practical lab work. The practical work comprises assignments to the covered aspects of the lecture.

Course Responsible

Prof. Erwin Laure

Michael Schliephake

Jonathan Vincent