On Mon, Feb 29, 2016 at 02:36:21PM -0800, Andi Kleen wrote:
> From: Andi Kleen <a...@linux.intel.com>
> 
> Now support CSV output for metrics. With the new output callbacks
> this is relatively straight forward by creating new callbacks.
> 
> This allows to easily plot metrics from CSV files.
> 
> The new line callback needs to know the number of fields to skip them
> correctly
> 
> Example output before:
> 
> % perf stat -x, true
> 0.200687,,task-clock,200687,100.00
> 0,,context-switches,200687,100.00
> 0,,cpu-migrations,200687,100.00
> 40,,page-faults,200687,100.00
> 730871,,cycles,203601,100.00
> 551056,,stalled-cycles-frontend,203601,100.00
> <not supported>,,stalled-cycles-backend,0,100.00
> 385523,,instructions,203601,100.00
> 78028,,branches,203601,100.00
> 3946,,branch-misses,203601,100.00
> 
> After:
> 
> % perf stat -x, true
> .502457,,task-clock,502457,100.00,0.485,CPUs utilized
> 0,,context-switches,502457,100.00,0.000,K/sec
> 0,,cpu-migrations,502457,100.00,0.000,K/sec
> 45,,page-faults,502457,100.00,0.090,M/sec
> 644692,,cycles,509102,100.00,1.283,GHz
> 423470,,stalled-cycles-frontend,509102,100.00,65.69,frontend cycles idle
> <not supported>,,stalled-cycles-backend,0,100.00,,,,
> 492701,,instructions,509102,100.00,0.76,insn per cycle
> ,,,,,0.86,stalled cycles per insn
> 97767,,branches,509102,100.00,194.578,M/sec
> 4788,,branch-misses,509102,100.00,4.90,of all branches
> 
> or easier readable
> 
> perf stat  -x, -o x.csv true
> [ak@tassilo hle]$ column -s, -t x.csv
> 0.490635                                 task-clock               490635  
> 100.00  0.489    CPUs utilized
> 0                                        context-switches         490635  
> 100.00  0.000    K/sec
> 0                                        cpu-migrations           490635  
> 100.00  0.000    K/sec
> 45                                       page-faults              490635  
> 100.00  0.092    M/sec
> 629080                                   cycles                   497698  
> 100.00  1.282    GHz
> 409498                                   stalled-cycles-frontend  497698  
> 100.00  65.09    frontend cycles idle
> <not supported>                          stalled-cycles-backend   0       
> 100.00
> 491424                                   instructions             497698  
> 100.00  0.78     insn per cycle
>                                                                               
>     0.83     stalled cycles per insn
> 97278                                    branches                 497698  
> 100.00  198.270  M/sec
> 4569                                     branch-misses            497698  
> 100.00  4.70     of all branches
> 
> Two new fields are added: metric value and metric name.

Acked-by: Jiri Olsa <jo...@kernel.org>

thanks,
jirka

Reply via email to