Dear Giuseppe,Thank you for the response.I have cloned your repository, and with git checkout your changes are reflected. In the compiled code I have run the ./papi_avail and ./papi_component_avail.It looks there is something more to be done to make the events to be read PAPI. The improvement with the new additions carried out is PAPI has identified the number of hardware counters, and libperf4 events error disappeared, yet to be enabled!!!I am posting the output of ./papi_avail and ./papi_component_avail below. Hope that will help resolve the issue fully../papi_avail
Available PAPI preset and user defined events plus hardware information.
--------------------------------------------------------------------------------
PAPI version : 6.0.0.1
Operating system : Linux 5.15.0-46-generic
Vendor string and code : GenuineIntel (1, 0x1)
Model string and code : 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz (140, 0x8c)
CPU revision : 1.000000
CPUID : Family/Model/Stepping 6/140/1, 0x06/0x8c/0x01
CPU Max MHz : 4700
CPU Min MHz : 400
Total cores : 8
SMT threads per core : 2
Cores per socket : 4
Sockets : 1
Cores per NUMA region : 8
NUMA regions : 1
Running in a VM : no
Number Hardware Counters : 19
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_L1_ICM 0x80000001 No No Level 1 instruction cache misses
PAPI_L2_DCM 0x80000002 No No Level 2 data cache misses
PAPI_L2_ICM 0x80000003 No No Level 2 instruction cache misses
ALL List of events are here but deleted to avoid confusion
--------------------------------------------------------------------------------
Of 108 possible events, 0 are available, of which 0 are derived.
No events detected! Check papi_component_avail to find out why.
./papi_component_avail
Available components and hardware information.
--------------------------------------------------------------------------------
Information will come here same as ./papi_avail command
then the following message comes
--------------------------------------------------------------------------------
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
Active components:
Name: perf_event Linux perf_event CPU counters
Native: 165, Preset: 0, Counters: 19
PMUs supported: ix86arch, perf, perf_raw, icl
-------------------------------------------------------------------------------
Hi Giuseppe,I have checked the new changes. The output remains the same. I guess that is what you expected.
-----------------------------------------------------------------------------
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
Active components:
Name: perf_event Linux perf_event CPU counters
Native: 165, Preset: 0, Counters: 19
PMUs supported: ix86arch, perf, perf_raw, icl
-------------------------------------------------------------------------------
Regards
Prakash Narayanan M
Thrikakkara
Kochi
***************************************************************************************************************
The purpose of life is a life of purpose.
***************************************************************************************************************
On Thu, 1 Sept 2022 at 15:43, Giuseppe Congiu <gco...@icl.utk.edu> wrote:
Hi Prakash,I had to modify the pull request https://bitbucket.org/icl/papi/pull-requests/322 a little bit. Could you give it another spin and check it still works?Thanks,GiuseppeOn Tue, Aug 30, 2022 at 3:28 PM Prakash Narayanan <pran...@gmail.com> wrote:Hi Giuseppe,Thank you for the brief explanation. That gives a good insight. It will help while going through the documentation link you have givenRegards
Prakash Narayanan M
Thrikakkara
Kochi
On Tue, 30 Aug 2022 at 17:00, Giuseppe Congiu <gco...@icl.utk.edu> wrote:
Hi Prakash,Preset events are (Papi defined) events common to all cpus, and recognised (by performance engineers) as important indicators of performance (intended as efficient utilisation of the hw by the user application). These are computed starting from the cpu specific native events. The reason is that each cpu might use different names for similar events or might even define events differently when compared with other cpus from the same vendor. You may already see how problematic can be for users to analyse performance on different cpus using native events. Papi preset events are platform independent because we make sure that when users access the L2 data cache misses using PAPI_L2_DCM, for example, these represent the same quantities on AMD, intel, ARM and even across different cpu models from the same vendor. The papi_events.csv file contains the formulas used by Papi to compute these platform independent preset events using reverse Polish notation. You can open that file and see exactly how each preset is computed for different performance monitoring units (PMU).I hope this is a sufficiently clear explanation to get you started with papi. For more details please consult the documentation on our wiki: https://bitbucket.org/icl/papi/wiki/PAPI-Overview.mdBest,GiuseppeOn Tue, Aug 30, 2022 at 11:23 AM Prakash Narayanan <pran...@gmail.com> wrote:Hi GiuseppeThanks for the addition.If I may ask you, what is the difference between preset events and native events? I am new to using PAPI, that is why this question arises.Regards
Prakash Narayanan M
Thrikakkara
Kochi
***************************************************************************************************************
The purpose of life is a life of purpose.
***************************************************************************************************************