diff options
author | Gabriel Kerneis <gabriel@kerneis.info> | 2013-09-17 18:26:48 +0200 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2013-09-19 13:21:41 +0200 |
commit | a9031675b9f757eef0fe8c99284ec0133c032c32 (patch) | |
tree | d9d0809a1cf1c65b936b4115c5087a57341d2555 | |
parent | 2fcd15eac3223b3907837e8d7f2b3829a16a4c45 (diff) | |
download | qemu-a9031675b9f757eef0fe8c99284ec0133c032c32.zip qemu-a9031675b9f757eef0fe8c99284ec0133c032c32.tar.gz qemu-a9031675b9f757eef0fe8c99284ec0133c032c32.tar.bz2 |
coroutine: fix /perf/nesting coroutine benchmark
The /perf/nesting benchmark is broken because the counters are
not reset after each iteration. Therefore, nesting is done only
on the first iteration, and skipped on every other.
This patch fixes the issue, and reduces the number of iterations
to make it possible to run the benchmark in a reasonable amount of
time.
Signed-off-by: Gabriel Kerneis <gabriel@kerneis.info>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r-- | tests/test-coroutine.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/tests/test-coroutine.c b/tests/test-coroutine.c index 2792191..15a885e 100644 --- a/tests/test-coroutine.c +++ b/tests/test-coroutine.c @@ -182,17 +182,17 @@ static void perf_nesting(void) unsigned int i, maxcycles, maxnesting; double duration; - maxcycles = 100000000; + maxcycles = 10000; maxnesting = 1000; Coroutine *root; - NestData nd = { - .n_enter = 0, - .n_return = 0, - .max = maxnesting, - }; g_test_timer_start(); for (i = 0; i < maxcycles; i++) { + NestData nd = { + .n_enter = 0, + .n_return = 0, + .max = maxnesting, + }; root = qemu_coroutine_create(nest); qemu_coroutine_enter(root, &nd); } |