• Veronika Molnarova's avatar
    perf test stat_bpf_counter.sh: Stabilize the test results · e8b86f03
    Veronika Molnarova authored
    The test has been failing for some time when two separate runs of
    perf benchmarks are recorded for cycles events and their counts are
    compared, while once the recording was done with option --bpf-counters
    and once without it. It is expected that the count of the samples
    should be within a certain range, firstly the difference was set to be
    within 10%, which was then later raised to 20%. However, the test case
    keeps failing on certain architectures as recording the provided
    benchmark can produce completely different counts based on the
    current load of the system.
    
    Sampling two separate runs on intel-eaglestream-spr-13 of "perf stat
    --no-big-num -e cycles -- perf bench sched messaging -g 1 -l 100 -t":
    
     Performance counter stats for 'perf bench sched messaging -g 1 -l 100 -t':
    
             396782898      cycles
    
           0.010051983 seconds time elapsed
    
           0.008664000 seconds user
           0.097058000 seconds sys
    
     Performance counter stats for 'perf bench sched messaging -g 1 -l 100 -t':
    
            1431133032      cycles
    
           0.021803714 seconds time elapsed
    
           0.023377000 seconds user
           0.349918000 seconds sys
    
    , which is ranging from 400mil to 1400mil samples.
    
    Instead of recording the cycles use instructions event, which provides
    more stable values. At the same time change the tested workload to one
    of the provided testing workloads by perf that is not based on a
    scheduler, which can provide another dependency on the current load.
    
    Sampling instructions event with the new workload provide much more
    stable results on intel-eaglestream-spr-13 of "perf stat --no-big-num
    -e instructions -- perf test -w brstack":
    
     Performance counter stats for 'perf test -w brstack':
    
              64584494      instructions
    
           0.009173945 seconds time elapsed
    
           0.007262000 seconds user
           0.002071000 seconds sys
    
     Performance counter stats for 'perf test -w brstack':
    
              64672669      instructions
    
           0.008888135 seconds time elapsed
    
           0.005018000 seconds user
           0.004018000 seconds sys
    Signed-off-by: default avatarVeronika Molnarova <vmolnaro@redhat.com>
    Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
    Cc: mpetlan@redhat.com
    Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
    Link: https://lore.kernel.org/r/20240625092001.10909-1-vmolnaro@redhat.com
    e8b86f03
stat_bpf_counters.sh 1.99 KB