ProTHPC - Proficiency Training High Performance Computing

ProTHPC is the abbreviation for "Proficiency Training High Performance Computing" and stands for short training units which offer a quick introduction to the respective topics promoting efficient and successful work in the context of HPC.

ProTHPC takes place at least once a year in southern Hesse (Frankfurt or Darmstadt) and in central or north Hesse (Giessen, Marburg, or Kassel). Covering thefollowing topics:

  • First Day: Linux and shell scripting – quick access to HPC systems
  • Second Day: Training course on the Linux software build process, and introduction to version control with Git
  • Third Day: Training course on the TotalView debugger

Before registering: Please read the detailed information about the modules you like to book!

The registration is binding. With your registration, we will use your contact information for organizational reasons:

  • to inform you about workshop details,  
  • about agenda changes, and
  • to contact you, in order to give us feedback about the workshop (evaluation)

The data will not be transferred to third paties. The personal data will be deleted two months after the closing of the workshop. We evaluate the data statistically to improve our service for your research. For further questions, please contact:

Detailed decription:

First Day: 10:00-17:00

Linux and Shell Scripting – Quick Access to HPC Systems
The course is aimed at the introduction to the linux command line interface, as found on most HPC systems. The basics of the command line will be taught in the first part of the course, while the second part teaches fundamentals of shell scripting and their use for the automation and organization of complex workloads within the context of HPC scheduling systems. The concepts are illustrated using Sun Grid Engine scheduler.

Second Day: 10:00-13:00

Training course on the Linux software build process

We introduce the basics of building software in the Linux command line environment which is common on HPC system. You will learn how to build your own applications with the Linux make system. The basic use of compilers (compiler flags, optimization, linking to libraries, using a preprocessor, generating serial and parallel code, …) will be covered as well the automation of the build process using makefiles (setting variables, targets, dependencies, linking, ...). We will discuss basic principles of automated build systems using configure files as found in many open source applications.


Introduction to Version Control with GIT

We present the distributed version control system Git, which is well established in the Linux community. Git cannot only be used for large projects - such as kernel development - but also for working together on smaller projects or for versioning your own projects

The following topics are covered:
● Explanation of key concepts (snapshots, commits, repositories)
● Prerequisites (install, config, create repository)
● Basic commands (status, add, commit, clone, push, pull, remote)
● Branching (create, rename, delete, switch, update & merge branches)
● Typical workflow concepts for branching
● Dealing with merge conflicts
● Cool add-ons (stash, log, gitignore, worktree)

Third Day: 10:00-17:00

Training course on the TotalView debugger 

Debugging is an essential part of software development and application. The advantages of a debugger compared to "printf-debugging" are often underappreciated. TotalView is a powerful tool which helps to find "sophisticated bugs" in parallel jobs quickly, but is also a helpful and timesaving tool for small problems.

TotalView is installed on all Hessian HPC clusters, and is available for all Hessian researchers.

This course will introduce the basics of debugging and in-depth training on the use of the TotalView debugger. TotalView, in contrast to many free debuggers explicitly supports debugging of parallel applications. This course covers the basic steps of session preparation, processing of core dump files and attaching to a hung process using the TotalView debugger. Advanced techniques covered are reverse debugging and parallel debugging.

You can book each course by its own. There are no registration fees.