Open AntonioZC666 opened 1 month ago
Hi, this is related to several reasons:
jevent
library do not work on your setup. PMU collection is dependent on both the CPU arch and the OS kernel. Check pmu-tools for more information. You can try to
Hi, this is related to several reasons:
- No permission to collect: enable collecting in kernel settings or run the tool with sudo.
The current PMU metrics and the
jevent
library do not work on your setup. PMU collection is dependent on both the CPU arch and the OS kernel. Check pmu-tools for more information. You can try to
- collect only one metric to see if it works
- check the error code of underlying syscalls
I've tried a lot but it doesn't work.
I tried to run the tool with sudo. NPB can work successfully but VAPRO didn't generate anything.
$ LIBPFM_FORCE_PMU=amd64 LD_PRELOAD=/xxxx/xxxx/project/VAPRO/build/libpapicnt.so sudo mpirun --allow-run-as-root -np 8 ./bin/is.B.x
[sudo] password for xxxx:
Authorization required, but no authorization protocol specified
Authorization required, but no authorization protocol specified
NAS Parallel Benchmarks 3.4 -- IS Benchmark
Size: 33554432 (class B)
Iterations: 10
Total number of processes: 8
iteration
1
2
3
4
5
6
7
8
9
10
IS Benchmark Completed
Class = B
Size = 33554432
Iterations = 10
Time in seconds = 0.35
Total processes = 8
Active processes= 8
Mop/s total = 952.56
Mop/s/process = 119.07
Operation type = keys ranked
Verification = SUCCESSFUL
Version = 3.4.2
Compile date = 05 Jun 2024
Compile options:
MPICC = mpicc
CLINK = $(MPICC)
CMPI_LIB = (none)
CMPI_INC = (none)
CFLAGS = -O3
CLINKFLAGS = $(CFLAGS)
Please send feedbacks and/or the results of this run to:
NPB Development Team
npb@nas.nasa.gov
I've tried to collect only one metric like cpu/instructions/
or cycles
(I modified in perf_jevent.cpp
and pmc_jevent.cpp
. If it's false please tell me). However it still did not work and still the same error message.
Event 0 cpu/instructions/
is.B.x: /xxxx/xxxx/project/VAPRO/pmc_jevents.cpp:53: void pmc_enable_real(): Assertion `!"No event"' failed.
[orange:1977926] *** Process received signal ***
[orange:1977926] Signal: Aborted (6)
[orange:1977926] Signal code: (-6)
or
Event 0 cycles
is.B.x: /xxxx/xxxx/project/VAPRO/pmc_jevents.cpp:53: void pmc_enable_real(): Assertion `!"No event"' failed.
[orange:1977926] *** Process received signal ***
[orange:1977926] Signal: Aborted (6)
[orange:1977926] Signal code: (-6)
My CPU is 13th Gen Intel(R) Core(TM) i5-13600K. I checked pmu-tools and it seems to support my CPU.
I don't know if there's a problem with my PAPI installation. When I ran the command papi_avail
, 0 are available.
Available PAPI preset and user defined events plus hardware information.
--------------------------------------------------------------------------------
PAPI version : 7.1.0.0
Operating system : Linux 6.2.0-37-generic
Vendor string and code : GenuineIntel (1, 0x1)
Model string and code : 13th Gen Intel(R) Core(TM) i5-13600K (183, 0xb7)
CPU revision : 1.000000
CPUID : Family/Model/Stepping 6/183/1, 0x06/0xb7/0x01
CPU Max MHz : 5100
CPU Min MHz : 800
Total cores : 20
SMT threads per core : 2
Cores per socket : 10
Sockets : 1
Cores per NUMA region : 20
NUMA regions : 1
Running in a VM : no
Number Hardware Counters : 0
Max Multiplex Counters : 384
Fast counter read (rdpmc): yes
--------------------------------------------------------------------------------
================================================================================
PAPI Preset Events
================================================================================
Name Code Avail Deriv Description (Note)
PAPI_L1_DCM 0x80000000 No No Level 1 data cache misses
......
PAPI_TOT_INS 0x80000032 No No Instructions completed
PAPI_INT_INS 0x80000033 No No Integer instructions
PAPI_FP_INS 0x80000034 No No Floating point instructions
PAPI_LD_INS 0x80000035 No No Load instructions
PAPI_SR_INS 0x80000036 No No Store instructions
PAPI_BR_INS 0x80000037 No No Branch instructions
PAPI_VEC_INS 0x80000038 No No Vector/SIMD instructions (could include integer)
PAPI_RES_STL 0x80000039 No No Cycles stalled on any resource
PAPI_FP_STAL 0x8000003a No No Cycles the FP unit(s) are stalled
PAPI_TOT_CYC 0x8000003b No No Total cycles
PAPI_LST_INS 0x8000003c No No Load/store instructions completed
PAPI_SYC_INS 0x8000003d No No Synchronization instructions completed
......
......
PAPI_FP_OPS 0x80000066 No No Floating point operations
PAPI_SP_OPS 0x80000067 No No Floating point operations; optimized to count scaled single precision vector operations
PAPI_DP_OPS 0x80000068 No No Floating point operations; optimized to count scaled double precision vector operations
PAPI_VEC_SP 0x80000069 No No Single precision vector/SIMD instructions
PAPI_VEC_DP 0x8000006a No No Double precision vector/SIMD instructions
PAPI_REF_CYC 0x8000006b No No Reference clock cycles
--------------------------------------------------------------------------------
Of 108 possible events, 0 are available, of which 0 are derived.
No events detected! Check papi_component_avail to find out why.
Then I ran the command papi_component_avail
and the result is like this:
Available components and hardware information.
--------------------------------------------------------------------------------
PAPI version : 7.1.0.0
Operating system : Linux 6.2.0-37-generic
Vendor string and code : GenuineIntel (1, 0x1)
Model string and code : 13th Gen Intel(R) Core(TM) i5-13600K (183, 0xb7)
CPU revision : 1.000000
CPUID : Family/Model/Stepping 6/183/1, 0x06/0xb7/0x01
CPU Max MHz : 5100
CPU Min MHz : 800
Total cores : 20
SMT threads per core : 2
Cores per socket : 10
Sockets : 1
Cores per NUMA region : 20
NUMA regions : 1
Running in a VM : no
Number Hardware Counters : 0
Max Multiplex Counters : 384
Fast counter read (rdpmc): yes
--------------------------------------------------------------------------------
Compiled-in components:
Name: perf_event Linux perf_event CPU counters
\-> Disabled: Error libpfm4 no default PMU found
Name: perf_event_uncore Linux perf_event CPU uncore and northbridge
\-> Disabled: No uncore PMUs or events found
Name: sysdetect System info detection component
Active components:
Name: sysdetect System info detection component
Native: 0, Preset: 0, Counters: 0
--------------------------------------------------------------------------------
I tried to solve this problem and I found that I only had to specify LIBPFM_FORCE_PMU
for it to have a normal (I guess) display:
$ LIBPFM_FORCE_PMU=amd64 papi_avail
Available PAPI preset and user defined events plus hardware information.
--------------------------------------------------------------------------------
PAPI version : 7.1.0.0
Operating system : Linux 6.2.0-37-generic
Vendor string and code : GenuineIntel (1, 0x1)
Model string and code : 13th Gen Intel(R) Core(TM) i5-13600K (183, 0xb7)
CPU revision : 1.000000
CPUID : Family/Model/Stepping 6/183/1, 0x06/0xb7/0x01
CPU Max MHz : 5100
CPU Min MHz : 800
Total cores : 20
SMT threads per core : 2
Cores per socket : 10
Sockets : 1
Cores per NUMA region : 20
NUMA regions : 1
Running in a VM : no
Number Hardware Counters : 4
Max Multiplex Counters : 384
Fast counter read (rdpmc): yes
--------------------------------------------------------------------------------
================================================================================
PAPI Preset Events
================================================================================
Name Code Avail Deriv Description (Note)
PAPI_L1_DCM 0x80000000 Yes No Level 1 data cache misses
......
PAPI_TOT_INS 0x80000032 Yes No Instructions completed
PAPI_INT_INS 0x80000033 No No Integer instructions
PAPI_FP_INS 0x80000034 No No Floating point instructions
PAPI_LD_INS 0x80000035 No No Load instructions
PAPI_SR_INS 0x80000036 No No Store instructions
PAPI_BR_INS 0x80000037 Yes No Branch instructions
PAPI_VEC_INS 0x80000038 No No Vector/SIMD instructions (could include integer)
PAPI_RES_STL 0x80000039 No No Cycles stalled on any resource
PAPI_FP_STAL 0x8000003a No No Cycles the FP unit(s) are stalled
PAPI_TOT_CYC 0x8000003b Yes No Total cycles
PAPI_LST_INS 0x8000003c No No Load/store instructions completed
PAPI_SYC_INS 0x8000003d No No Synchronization instructions completed
......
PAPI_FP_OPS 0x80000066 No No Floating point operations
PAPI_SP_OPS 0x80000067 No No Floating point operations; optimized to count scaled single precision vector operations
PAPI_DP_OPS 0x80000068 No No Floating point operations; optimized to count scaled double precision vector operations
PAPI_VEC_SP 0x80000069 No No Single precision vector/SIMD instructions
PAPI_VEC_DP 0x8000006a No No Double precision vector/SIMD instructions
PAPI_REF_CYC 0x8000006b No No Reference clock cycles
--------------------------------------------------------------------------------
Of 108 possible events, 18 are available, of which 5 are derived.
$ LIBPFM_FORCE_PMU=amd64 papi_component_avail
Available components and hardware information.
--------------------------------------------------------------------------------
......
--------------------------------------------------------------------------------
Compiled-in components:
Name: perf_event Linux perf_event CPU counters
Name: perf_event_uncore Linux perf_event CPU uncore and northbridge
\-> Disabled: No uncore PMUs or events found
Name: sysdetect System info detection component
Active components:
Name: perf_event Linux perf_event CPU counters
Native: 24, Preset: 18, Counters: 4
PMUs supported: amd64_k7
Name: sysdetect System info detection component
Native: 0, Preset: 0, Counters: 0
--------------------------------------------------------------------------------
I don't know whether the PAPI installation will affect the use of VAPRO. If you know more, please tell me.
Thank you very much.
Hello, I'm trying to test with VAPRO. After I built all the dependencies and VAPRO, I'd like to use it to do some testing with NAS Parallel Benchmarks. However, when I run the command, there are some problems and I don't know how solve it.
The command and errors are displayed as follows:
The versions of the relevant tools are as follows:
Thanks for your help.