lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 22 Jan 2016 11:05:52 +0100 From: Jiri Olsa <jolsa@...hat.com> To: Andi Kleen <andi@...stfloor.org> Cc: acme@...nel.org, jolsa@...nel.org, mingo@...nel.org, linux-kernel@...r.kernel.org, eranian@...gle.com, Andi Kleen <ak@...ux.intel.com> Subject: Re: [PATCH 1/9] perf, tools, stat: Abstract stat metrics printing On Tue, Jan 19, 2016 at 06:26:44PM -0800, Andi Kleen wrote: SNIP > > -void perf_stat__print_shadow_stats(FILE *out, struct perf_evsel *evsel, > - double avg, int cpu, enum aggr_mode aggr) > +void perf_stat__print_shadow_stats(struct perf_evsel *evsel, > + double avg, int cpu, > + struct perf_stat_output_ctx *out) > { > + void *ctxp = out->ctx; > + print_metric_t print_metric = out->print_metric; > double total, ratio = 0.0, total2; > int ctx = evsel_context(evsel); > > @@ -307,119 +302,145 @@ void perf_stat__print_shadow_stats(FILE *out, struct perf_evsel *evsel, > total = avg_stats(&runtime_cycles_stats[ctx][cpu]); > if (total) { > ratio = avg / total; > - fprintf(out, " # %5.2f insns per cycle ", ratio); > + print_metric(ctxp, NULL, "%7.2f ", > + "insn per cycle", ratio); > } else { > - fprintf(out, " "); > + print_metric(ctxp, NULL, NULL, "insn per cycle", 0); > } > total = avg_stats(&runtime_stalled_cycles_front_stats[ctx][cpu]); > total = max(total, avg_stats(&runtime_stalled_cycles_back_stats[ctx][cpu])); > > + out->new_line(ctxp); > if (total && avg) { > ratio = total / avg; > - fprintf(out, "\n"); > - if (aggr == AGGR_NONE) > - fprintf(out, " "); > - fprintf(out, " # %5.2f stalled cycles per insn", ratio); > + print_metric(ctxp, NULL, "%7.2f ", > + "stalled cycles per insn", > + ratio); > + } else { > + print_metric(ctxp, NULL, NULL, > + "stalled cycles per insn", 0); > } hum the CSV output showing extra line with empty metrics, and looks like t's because of the above hunk.. [jolsa@...va perf]$ sudo ./perf stat -e cycles,instructions -a -x, ^C160517940,,cycles,2357448795,100.00,,Ghz,2357448795,100.00 84822675,,instructions,2357537479,100.00,0.53,insn per cycle ,,,2357537479,100.00,,stalled cycles per insn,2357537479,100.00 [jolsa@...va perf]$ sudo ./perf stat -e cycles,instructions -a ^C Performance counter stats for 'system wide': 114,951,298 cycles 24,554,494 instructions # 0.21 insn per cycle 0.663756378 seconds time elapsed thanks, jirka
Powered by blists - more mailing lists