1. 01 4月, 2013 2 次提交
    • S
      perf tools: Add mem access sampling core support · 98a3b32c
      Stephane Eranian 提交于
      This patch adds the sorting and histogram support
      functions to enable profiling of memory accesses.
      
      The following sorting orders are added:
       - symbol_daddr: data address symbol (or raw address)
       - dso_daddr: data address shared object
       - locked: access uses locked transaction
       - tlb : TLB access
       - mem : memory level of the access (L1, L2, L3, RAM, ...)
       - snoop: access snoop mode
      Signed-off-by: NStephane Eranian <eranian@google.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1359040242-8269-12-git-send-email-eranian@google.com
      [ committer note: changed to cope with fc5871ed, the move of methods to
        machine.[ch], and the rename of dsrc to data_src, to match the change
        made in the PERF_SAMPLE_DSRC in a previous patch. ]
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      98a3b32c
    • A
      perf tools: Add support for weight v7 (modified) · 05484298
      Andi Kleen 提交于
      perf record has a new option -W that enables weightened sampling.
      
      Add sorting support in top/report for the average weight per sample and the
      total weight sum. This allows to both compare relative cost per event
      and the total cost over the measurement period.
      
      Add the necessary glue to perf report, record and the library.
      
      v2: Merge with new hist refactoring.
      v3: Fix manpage. Remove value check.
      Rename global_weight to weight and weight to local_weight.
      v4: Readd sort keys to manpage
      v5: Move weight to end
      v6: Move weight to template
      v7: Rename weight key.
      
      Original patch from Andi modified by Stephane Eranian <eranian@google.com>
      to include ONLY the weight supporting code and apply to pristine 3.8.0-rc4.
      Signed-off-by: NAndi Kleen <ak@linux.intel.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1359040242-8269-6-git-send-email-eranian@google.com
      [ committer note: changed to cope with fc5871ed and the hists_link perf test entry ]
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      05484298
  2. 27 3月, 2013 1 次提交
  3. 26 3月, 2013 2 次提交
    • S
      perf stat: Add per-core aggregation · 12c08a9f
      Stephane Eranian 提交于
      This patch adds the --per-core option to perf stat.
      
      This option is used to aggregate system-wide counts
      on a per physical core basis. On processors with
      hyperthreading, this means counts of all HT threads
      running on a physical core are aggregated.
      
      This mode is useful to find imblance between physical
      cores running an uniform workload. Cores are identified
      by socket: S0-C1, means physical core 1 on socket 0. Note
      that cores are identified using their physical core id,
      thus their numbering may not be continuous.
      
      Per core aggregation can be combined with interval printing:
      
       # perf stat -a --per-core -I 1000 -e cycles sleep 1000
       #           time core         cpus             counts events
            1.000090030 S0-C0           1          4,765,747 cycles
            1.000090030 S0-C1           1          5,580,647 cycles
            1.000090030 S0-C2           1            221,181 cycles
            1.000090030 S0-C3           1            266,092 cycles
      Signed-off-by: NStephane Eranian <eranian@google.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1360846649-6411-4-git-send-email-eranian@google.com
      [ committer note: Remove parts already applied on 86ee6e18 to keep bisectability ]
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      12c08a9f
    • S
      perf stat: Refactor aggregation code · 86ee6e18
      Stephane Eranian 提交于
      Refactor aggregation code by introducing a single aggr_mode variable and an
      enum for aggregation.
      
      Also refactor cpumap code having to do with cpu to socket mappings. All in
      preparation for extended modes, such as cpu -> core.
      
      Also fix socket aggregation and ensure that sockets are printed in increasing
      order.
      Signed-off-by: NStephane Eranian <eranian@google.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung.kim@lge.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/1360846649-6411-2-git-send-email-eranian@google.com
      [ committer note: Fixup conflicts with a7e191c3 "--repeat forever" and
        acf28922 "Use perf_evlist__prepare/start_workload()" ]
      Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
      86ee6e18
  4. 22 3月, 2013 10 次提交
  5. 16 3月, 2013 25 次提交