1. 28 11月, 2013 10 次提交
  2. 27 11月, 2013 1 次提交
    • S
      tools/perf/stat: Add event unit and scale support · 410136f5
      Stephane Eranian 提交于
      This patch adds perf stat support for handling event units and
      scales as exported by the kernel.
      
      The kernel can export PMU events actual unit and scaling factor
      via sysfs:
      
        $ ls -1 /sys/devices/power/events/energy-*
        /sys/devices/power/events/energy-cores
        /sys/devices/power/events/energy-cores.scale
        /sys/devices/power/events/energy-cores.unit
        /sys/devices/power/events/energy-pkg
        /sys/devices/power/events/energy-pkg.scale
        /sys/devices/power/events/energy-pkg.unit
        $ cat /sys/devices/power/events/energy-cores.scale
        2.3283064365386962890625e-10
        $ cat cat /sys/devices/power/events/energy-cores.unit
        Joules
      
      This patch modifies the pmu event alias code to check
      for the presence of the .unit and .scale files to load
      the corresponding values. They are then used by perf stat
      transparently:
      
         # perf stat -a -e power/energy-pkg/,power/energy-cores/,cycles -I 1000 sleep 1000
         #          time             counts   unit events
             1.000214717               3.07 Joules power/energy-pkg/         [100.00%]
             1.000214717               0.53 Joules power/energy-cores/
             1.000214717           12965028        cycles                    [100.00%]
             2.000749289               3.01 Joules power/energy-pkg/
             2.000749289               0.52 Joules power/energy-cores/
             2.000749289           15817043        cycles
      
      When the event does not have an explicit unit exported by
      the kernel, nothing is printed. In csv output mode, there
      will be an empty field.
      
      Special thanks to Jiri for providing the supporting code
      in the parser to trigger reading of the scale and unit files.
      Signed-off-by: NStephane Eranian <eranian@google.com>
      Reviewed-by: NJiri Olsa <jolsa@redhat.com>
      Reviewed-by: NAndi Kleen <ak@linux.intel.com>
      Signed-off-by: NPeter Zijlstra <peterz@infradead.org>
      Cc: zheng.z.yan@intel.com
      Cc: bp@alien8.de
      Cc: maria.n.dimakopoulou@gmail.com
      Cc: acme@redhat.com
      Link: http://lkml.kernel.org/r/1384275531-10892-3-git-send-email-eranian@google.comSigned-off-by: NIngo Molnar <mingo@kernel.org>
      410136f5
  3. 19 11月, 2013 3 次提交
  4. 15 11月, 2013 11 次提交
  5. 14 11月, 2013 1 次提交
    • I
      tools/perf/build: Fix timerfd feature check · bb4c5500
      Ingo Molnar 提交于
      'feature_timerfd' is checked all the time and calculated explicitly,
      in a serial fashion. Add it to CORE_FEATURE_TESTS which causes it to
      be built in parallel, using the newfangled parallel build autodetection
      code.
      
      This shaves 137 msecs off the perf build time on my system, which
      speeds up the common case cached build by 43%:
      
      Before:
      
        comet:~/tip> perf stat --null --repeat 5 make -C tools/perf/
        [...]
               0,453771441 seconds time elapsed                                          ( +-  0,09% )
      
      After:
      
        comet:~/tip> perf stat --null --repeat 5 make -C tools/perf/
        [...]
               0,316290185 seconds time elapsed                                          ( +-  0,24% )
      
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Link: http://lkml.kernel.org/n/tip-bb92CmexihopoSyqnkqepvsy@git.kernel.orgSigned-off-by: NIngo Molnar <mingo@kernel.org>
      bb4c5500
  6. 13 11月, 2013 12 次提交
  7. 12 11月, 2013 2 次提交
    • A
      perf tests: Use lower sample_freq in sw clock event period test · 67c1e4a5
      Arnaldo Carvalho de Melo 提交于
      We were using it at 10 kHz, which doesn't work in machines where somehow
      the max freq was auto reduced by the kernel:
      
      [root@ssdandy ~]# perf test 19
      19: Test software clock events have valid period values    : FAILED!
      [root@ssdandy ~]# perf test -v 19
      19: Test software clock events have valid period values    :
      --- start ---
      Couldn't open evlist: Invalid argument
      ---- end ----
      Test software clock events have valid period values: FAILED!
      [root@ssdandy ~]#
      
      [root@ssdandy ~]# cat /proc/sys/kernel/perf_event_max_sample_rate
      7000
      
      Reducing it to 500 Hz should be good enough for this test and also
      shouldn't affect what it is testing.
      
      But warn the user if it fails, informing the knob and the freq tried.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-548rhj1uo6xbwnxa95kw3hqe@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      67c1e4a5
    • A
      perf tests: Check return of perf_evlist__open sw clock event period test · d0b849e9
      Arnaldo Carvalho de Melo 提交于
      We were not checking if we successfully opened the counters, i.e. if
      sys_perf_event_open worked, when it doesn't in this test, we were
      continuing anyway and then segfaulting when trying to access the file
      descriptor array, that at that point had been freed in perf_evlist__open
      error path:
      
      [root@ssdandy ~]# perf test -v 19
      19: Test software clock events have valid period values    :
      --- start ---
      Segmentation fault (core dumped)
      [root@ssdandy ~]#
      
      Do the check and bail out instead.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-6qy8ljkn0e9hm7bh7keo5z68@git.kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      d0b849e9