When running likwid-powermeter in a cpuset limited environment (e.g. SLURM jobs) and the cpuset does not contain hardware threads in all socket domains, it fails.
To Reproduce
LIKWID command and/or API usage
$ likwid-pin -c N -p
0,40,1,41,2,42,5,45,6,46,10,50,11,51,12,52,15,55,16,56,3,43,4,44,7,47,8,48,9,49,13,53,14,54,17,57,18,58,19,59,20,60,21,61,22,62,25,65,26,66,30,70,31,71,32,72,35,75,36,76,23,63,24,64,27,67,28,68,29,69,33,73,34,74,37,77,38,78,39,79
$ taskset -c 0-9 likwid-powermeter -i
WARN: Selected affinity domain S0 has only 10 hardware threads, but selection string evaluates to 20 threads.
This results in multiple threads on the same hardware thread.
/tmp/bin/likwid-lua: /tmp/bin/likwid-powermeter:172: attempt to index a nil value (field '?')
stack traceback:
/tmp/bin/likwid-powermeter:172: in main chunk
[C]: in ?
LIKWID version and download source (Github, FTP, package manger, ...)
likwid-powermeter -- Version 5.2.2 (commit: 233ab943543480cd46058b34616c174198ba0459)
Describe the bug
When running likwid-powermeter in a cpuset limited environment (e.g. SLURM jobs) and the cpuset does not contain hardware threads in all socket domains, it fails.
To Reproduce
LIKWID command and/or API usage
LIKWID version and download source (Github, FTP, package manger, ...)
likwid-powermeter -- Version 5.2.2 (commit: 233ab943543480cd46058b34616c174198ba0459)
Operating system Ubuntu 20.04.5 LTS