This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "".
The branch, master has been updated via 43ea7311f98d1602ab29e9eec4ea9c895d73181d (commit) from df29614a6174b03d03d44041e13c0c83199e42c3 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 43ea7311f98d1602ab29e9eec4ea9c895d73181d Author: Ilias Apalodimas ilias.apalodimas@linaro.org Date: Mon Sep 4 13:02:39 2017 +0300
examples: generator: use clock related functions less when printing
Using odp_time_local() on each iteration consumes too much cpu for no reason. Netmap pktio reported a boost from ~550kpps to ~1.2Mpps when odp_generator was used as a receiver on 1Gbit links.
Signed-off-by: Ilias Apalodimas ilias.apalodimas@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-and-tested-by: <Bogdan Pricope bogdan.pricope@linaro.org> Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/example/generator/odp_generator.c b/example/generator/odp_generator.c index df18ea80..cc07cf1d 100644 --- a/example/generator/odp_generator.c +++ b/example/generator/odp_generator.c @@ -850,11 +850,12 @@ static int gen_recv_thread(void *arg) */ static void print_global_stats(int num_workers) { - odp_time_t cur, wait, next; + odp_time_t cur, wait, next, left; uint64_t pkts_snd = 0, pkts_snd_prev = 0; uint64_t pps_snd = 0, maximum_pps_snd = 0; uint64_t pkts_rcv = 0, pkts_rcv_prev = 0; uint64_t pps_rcv = 0, maximum_pps_rcv = 0; + uint64_t stall; int verbose_interval = 20; odp_thrmask_t thrd_mask;
@@ -871,8 +872,15 @@ static void print_global_stats(int num_workers) }
cur = odp_time_local(); - if (odp_time_cmp(next, cur) > 0) + if (odp_time_cmp(next, cur) > 0) { + left = odp_time_diff(next, cur); + stall = odp_time_to_ns(left); + if (stall / ODP_TIME_SEC_IN_NS) + sleep(1); + else + usleep(stall / ODP_TIME_USEC_IN_NS); continue; + }
next = odp_time_sum(cur, wait); switch (args->appl.mode) {
-----------------------------------------------------------------------
Summary of changes: example/generator/odp_generator.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-)
hooks/post-receive