Section outline

  • LIKWID logoLIKWID stands for "Like I Knew What I'm Doing." It is a tool suite for performance-aware programming on modern clusters. LIKWID is in use at many computing centers worldwide and can be employed on the full spectrum of platforms, from laptop to supercomputer.

    LIKWID comprises a variety 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.

    Requirements

    • Basic understanding of parallel programming with MPI and OpenMP
    • Fluency on the Linux command line
    • Editing files through ssh connection via vim, emacs, nano, ...
    • A current web browser since system access is provided through Jupyter notebooks.

    Instructors

    Thomas Gruber and Georg Hager (NHR@FAU)

    This course is organized by Erlangen National High Performance Computing Center (NHR@FAU)

    Time & Date

    July 23, 2024, 9:30 a.m. - 4:30 p.m. CEST