Commit cced06c6 authored by Hitoshi Mitake's avatar Hitoshi Mitake Committed by Ingo Molnar

perf bench: Modify bench/bench-messaging.c to adopt unified output formatting

This patch modifies bench/bench-messaging.c to adopt
unified output formatting: --format option.

Usage example:

 % ./perf bench sched messaging              # with no style
 specify (20 sender and receiver processes per group)
 (10 groups == 400 processes run)

        Total time:1.431 sec

 % ./perf bench --format=simple sched messaging # specified
 simple 1.431
Signed-off-by: default avatarHitoshi Mitake <mitake@dcl.info.waseda.ac.jp>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
LKML-Reference: <1257808802-9420-4-git-send-email-mitake@dcl.info.waseda.ac.jp>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 386d7e9e
...@@ -35,7 +35,6 @@ static int use_pipes = 0; ...@@ -35,7 +35,6 @@ static int use_pipes = 0;
static unsigned int loops = 100; static unsigned int loops = 100;
static unsigned int thread_mode = 0; static unsigned int thread_mode = 0;
static unsigned int num_groups = 10; static unsigned int num_groups = 10;
static int simple = 0;
struct sender_context { struct sender_context {
unsigned int num_fds; unsigned int num_fds;
...@@ -261,9 +260,6 @@ static const struct option options[] = { ...@@ -261,9 +260,6 @@ static const struct option options[] = {
"Specify number of groups"), "Specify number of groups"),
OPT_INTEGER('l', "loop", &loops, OPT_INTEGER('l', "loop", &loops,
"Specify number of loops"), "Specify number of loops"),
OPT_BOOLEAN('s', "simple-output", &simple,
"Do simple output (this maybe useful for"
"processing by scripts or graph tools like gnuplot)"),
OPT_END() OPT_END()
}; };
...@@ -316,9 +312,8 @@ int bench_sched_messaging(int argc, const char **argv, ...@@ -316,9 +312,8 @@ int bench_sched_messaging(int argc, const char **argv,
timersub(&stop, &start, &diff); timersub(&stop, &start, &diff);
if (simple) switch (bench_format) {
printf("%lu.%03lu\n", diff.tv_sec, diff.tv_usec/1000); case BENCH_FORMAT_DEFAULT:
else {
printf("(%d sender and receiver %s per group)\n", printf("(%d sender and receiver %s per group)\n",
num_fds, thread_mode ? "threads" : "processes"); num_fds, thread_mode ? "threads" : "processes");
printf("(%d groups == %d %s run)\n\n", printf("(%d groups == %d %s run)\n\n",
...@@ -326,6 +321,15 @@ int bench_sched_messaging(int argc, const char **argv, ...@@ -326,6 +321,15 @@ int bench_sched_messaging(int argc, const char **argv,
thread_mode ? "threads" : "processes"); thread_mode ? "threads" : "processes");
printf("\tTotal time:%lu.%03lu sec\n", printf("\tTotal time:%lu.%03lu sec\n",
diff.tv_sec, diff.tv_usec/1000); diff.tv_sec, diff.tv_usec/1000);
break;
case BENCH_FORMAT_SIMPLE:
printf("%lu.%03lu\n", diff.tv_sec, diff.tv_usec/1000);
break;
default:
/* reaching here is something disaster */
fprintf(stderr, "Unknown format:%d\n", bench_format);
exit(1);
break;
} }
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment