Introduction to the LIKWID Tool Suite
Course Description
LIKWID stands for “Like I Knew What I’m Doing.” It is a tool suite for performance-aware programming on modern clusters. LIKWID is in wide use at many computing centers worldwide and can be employed on the full spectrum of platforms, from laptop to supercomputer.
LIKWID comprises a spectrum of command-line tools and follows the UNIX philosophy of “one tool, one purpose.” In this course, we will cover the following tools in depth:
- likwid-topology, a node-level topology exploration tool
- likwid-pin, for enforcing thread-core affinity in thread-parallel programs
- likwid-mpirun, for starting MPI and MPI/OpenMP-hybrid programs and enforcing thread-core affinity
- likwid-perfctr, for counting hardware events and measuring derived metrics
- likwid-bench, a microbenchmarking framework
A strong focus will be on diagnostic performance engineering using hardware performance counters on real application codes. Hands-on exercises will enable attendees to consolidate the acquired knowledge.
Certification
A certificate of participation will be awarded to all participants who actively engage in the course.
Prerequisites
Participants should meet the following requirements:
- Basic understanding of C, C++, or Fortran, and parallel programming with MPI and OpenMP
- Fluency on the Linux command line
- Editing files through ssh connection via vim, emacs, nano, …
Upcoming Iterations and Additional Courses
You can find dates and registration links for this and other upcoming NHR@FAU courses at https://hpc.fau.de/teaching/tutorials-and-courses/.