Re: [PATCH 0/2] perf: add new uncore command

From: Ingo Molnar
Date: Thu Jan 31 2013 - 09:21:18 EST



* Stephane Eranian <eranian@xxxxxxxxxx> wrote:

> This patchset adds a new command to perf: perf uncore.
> It is used to measure processor socket-level metrics
> on a system-wide basis and at all priv levels.
>
> The command comes with a set of predefined key metrics
> which are useful to measure multi-socket system imbalance
> and various bandwidths.
>
> The following metrics are currently defined:
> - memory bandwidth (Nehalem, Westmere, SandyBridge-EP)
> - PCIe bandwidth (SandyBridge-EP)
> - QPI bandwidth (SandyBridge-EP)
> - C-state residency (SandyBridge-EP)
>
> Others can be added in the future.
>
> The command provides options to modify the unit of the metrics
> (default: MB/s for bandwidth).
>
> Example on Nehalem:
>
> # perf uncore
> #------------------------------
> # Socket0 |
> #------------------------------
> # RAM Bandwidth |
> # Wr Rd|
> # MB/s MB/s|
> #------------------------------
> 4954.99 14897.29
> 4953.97 14894.56
> 4947.52 14874.97
>
> To make plotting easier, the output can be augmented with a timestamp:
>
> # perf uncore -T
> #----------------------------------------
> # | Socket0 |
> # |------------------------------
> # Time | RAM Bandwidth |
> # in | Wr Rd|
> # secs | MB/s MB/s|
> #----------------------------------------
> 1 4952.50 14890.49
> 2 4955.55 14900.19
> 3 4949.13 14879.60
> 4 4954.66 14896.26

Looks really useful - how about naming it in a bit more generic
way, because I'm quite sure this command will become popular and
'perf uncore' is a bit un-intutive.

A couple of possibilities:

perf system
perf hw
perf hw-stat

and also adding subcommands instead of options for the various
views/metrics, such as:

perf hw ram
perf hw pci
perf hw qpi
perf hw cstate
etc.

A plain 'perf hw' command would then list the available
sub-commands and inform the user about the (current) set of
hw subsystems that provide metrics.

Hm?

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/