Search code examples
pythondistributed-computingpapicompsspycompss

Fixing COMPSs tracing error: PAPI_read failed for thread X evtset X (papi_hwc.c:*)


I am trying to run COMPSs with the tracing system (extrae) activated. I first had an installation issue but I solved it thanks this question:

How to fix libpapi.so.* cannot open shared object file when running (py)COMPSs with tracing?

However, now I am facing a new PAPI problem. The COMPSs runtime seems to be correctly loaded but Extrae reports this errors:

Extrae: Error! Hardware counter PAPI_L3_TCM (0x80000008) cannot be added in set 1 (thread 0)
Extrae: Error! Hardware counter PAPI_FP_INS (0x80000034) cannot be added in set 1 (thread 0)
Extrae: Error! Hardware counter PAPI_SR_INS (0x80000036) cannot be added in set 2 (thread 0)
Extrae: Error! Hardware counter PAPI_BR_UCN (0x8000002a) cannot be added in set 2 (thread 0)
Extrae: Error! Hardware counter PAPI_BR_CN  (0x8000002b) cannot be added in set 2 (thread 0)
Extrae: Error! Hardware counter PAPI_VEC_SP (0x80000069) cannot be added in set 2 (thread 0)
Extrae: Error! Hardware counter RESOURCE_STALLS (0x40000023) cannot be added in set 2 (thread 0)

Despite the errors I get:

Extrae: Successfully initiated with 1 tasks and 1 threads

WARNING: IT Properties file is null. Setting default values

[   API]  -  Deploying COMPSs Runtime v1.4 (build 20160722-1520.r59)
[   API]  -  Starting COMPSs Runtime v1.4 (build 20160722-1520.r59)

But after starting the runtime I get this in a infinite loop:

Extrae: PAPI_read failed for thread 1 evtset 2 (papi_hwc.c:669)
Extrae: PAPI_read failed for thread 0 evtset 1 (papi_hwc.c:669)

I would like to be able to get traces even if they don't have hardware PAPI counters. How can I disable them or fix the error?


Solution

  • Check and disable unavailable PAPI counters

    It appears that you don't have that counters available in your machine. Use:

    papi_avail -a
    

    to see the available papi counters. Edit the config files under: /opt/COMPSs/Runtime/configuration/xml/tracing/*.xml and remove the offending PAPI counters from the <counters> section. Alternatively, you can use:

    /opt/COMPSs/Dependencies/extrae/bin/papi_best_set COUNTER_NAME_#1, COUNTER_NAME_#2, COUNTER_NAME_#3, ...
    

    to see if there is some incompatibility in the PAPI counter sets.

    Disable all counters

    If you want to disable all of them just change files:

    • extrae_basic.xml
    • extrae_advanced.xml
    • extrae_task.xml

    under /opt/COMPSs/Runtime/configuration/xml/tracing/ folder and change the line:

    <counters enabled="yes">
    

    for:

    <counters enabled="no">