diff options
Diffstat (limited to 'tools/perf/builtin-stat.c')
| -rw-r--r-- | tools/perf/builtin-stat.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index 16af2d82e858..e5f6ece65a13 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c | |||
| @@ -338,14 +338,24 @@ static void nsec_printout(int counter, double avg) | |||
| 338 | 338 | ||
| 339 | static void abs_printout(int counter, double avg) | 339 | static void abs_printout(int counter, double avg) |
| 340 | { | 340 | { |
| 341 | double total, ratio = 0.0; | ||
| 342 | |||
| 341 | fprintf(stderr, " %14.0f %-24s", avg, event_name(counter)); | 343 | fprintf(stderr, " %14.0f %-24s", avg, event_name(counter)); |
| 342 | 344 | ||
| 343 | if (MATCH_EVENT(HARDWARE, HW_INSTRUCTIONS, counter)) { | 345 | if (MATCH_EVENT(HARDWARE, HW_INSTRUCTIONS, counter)) { |
| 344 | fprintf(stderr, " # %10.3f IPC ", | 346 | total = avg_stats(&runtime_cycles_stats); |
| 345 | avg / avg_stats(&runtime_cycles_stats)); | 347 | |
| 348 | if (total) | ||
| 349 | ratio = avg / total; | ||
| 350 | |||
| 351 | fprintf(stderr, " # %10.3f IPC ", ratio); | ||
| 346 | } else { | 352 | } else { |
| 347 | fprintf(stderr, " # %10.3f M/sec", | 353 | total = avg_stats(&runtime_nsecs_stats); |
| 348 | 1000.0 * avg / avg_stats(&runtime_nsecs_stats)); | 354 | |
| 355 | if (total) | ||
| 356 | ratio = 1000.0 * avg / total; | ||
| 357 | |||
| 358 | fprintf(stderr, " # %10.3f M/sec", ratio); | ||
| 349 | } | 359 | } |
| 350 | } | 360 | } |
| 351 | 361 | ||
