You are located in service: RWTH High Performance Computing (Linux)

LIKWID

LIKWID

Kurzinformation

Likwid is a simple to install and use toolsuite of command line applications and a library for performance oriented programmers. It works for Intel, AMD, ARMv8 and POWER9 processors on the Linux operating system. There is additional support for Nvidia GPUs. There is support for ARMv7 and POWER8 but there is currently no test machine in our hands to test them properly.

LIKWID

Detailinformation

To access to this software, your user ID must be registered as LIKWID user. Please request the rights via ServiceDesk.

Depending on the version, you might have to load additional modules until you can load LIKWID:

module load GCC/11.3.0
module load likwid/5.2.1

Available LIKWID versions can be listed with module spider likwid. Specifying a version will list the needed modules: module spider likwid/5.2.1

Even though LIKWID is available on any node in the HPC Cluster we recommend to run the measurements on the cluster-linux-tuning login18-t frontend nodes.

For longer test runs you are kindly invited to use the batch system. You can run LIKWID in two ways:

  • Start an interactive GUI session
  • Perform data collection using the CLI tools in a batch job; after the job has finished, take a look at the output.

Note: For the batch system, you have to add the following option to your batch script: #SBATCH --hwctr=likwid

This option also sets your job to exclusive mode - mind the resource consumption!

It disables the LIKWID performance monitoring infrastructure we run on all batch nodes. If in doubt, especially if you get an error message like below in the batch job:

ERROR: The selected register UPMC0 is in use.
Please run likwid with force option (-f, --force) to overwrite settings

Please do not use the force option (-f, --force) but report the issue with all circumstances (batch job script used, job ID, full output) to ServiceDesk. Thanks!

On interactive frontends you could also get this error in case other user runs a LIKWID measurement at the same time; so don't panic, wait a moment and try to re-run your measurement. However, if the selected register ... is in use error holds for longer time, you are welcome to try another frontend, go to the batch system, and/or report the issue to Service Desk.

For further details on how to use LIKWID please contact the HPC team or attend one of our regular workshops, e.g. PPCES 2018

Example batch script for Likwid with GUI:

#!/usr/bin/zsh

### Job name
#SBATCH --job-name=LikwidGUI

### Request the time you need for execution in minutes
#SBATCH --time=120

### Request X11-Forwarding for this job
#TBD:

### Request Likwid capability (disable default performance monitoring)
### Note that this also makes your job exclusive
#SBATCH --hwctr=likwid

### Load the module and execute the GUI
module load GCC/11.3.0
module load likwid/5.2.1

xterm

Example batch script for CLI use of LIKWID

#!/usr/bin/zsh

### Job name
#SBATCH --job-name=LikwidCLI

### Request the time you need for execution in minutes
#SBATCH --time=120

### Request the number of compute slots you want to use
#SBATCH --ntasks=8

### Use esub for OpenMP/shared memory jobs
#TBD:

### Request Likwid capability (disable default performance monitoring)
### Note that this also makes your job exclusive
#SBATCH --hwctr=likwid

### 'hpcpuburn' is just an application to allocate and initialise some memory and produce some load an cores
module load GCC/11.3.0
module load likwid/5.2.1

likwid-perfctr -g MEM -c 0-12 hpcpuburn -N 12 -T 200 -V 18000 -R 17000

After the job has finished, results will be printed on the standard output of the job below the output of the application.

last changed on 09/09/2024

How did this content help you?

Creative Commons Lizenzvertrag
This work is licensed under a Creative Commons Attribution - Share Alike 3.0 Germany License