> On Fri, Aug 30, 2013 at 12:24:17PM +0900, YAMAMOTO Takashi wrote: >> > Batching reduces overheads and enables upto 4 times the upcall processing >> > performance in a specialized test case. >> > >> > Signed-off-by: Jarno Rajahalme <jrajaha...@nicira.com> >> > --- >> > v2: Do not wake consumer threads if they are already keeping the queue >> > level low enough. >> >> if the queue level is high, the consumer should already be busy working on >> the queue, right? why do you want to keep signaling them again and again? >> >> the dispatcher needs to signal the consumer only if handler->n_upcalls >> was 0 before incrementing. >> >> if (handler->n_upcalls == 0) { >> handler->need_signal = true; >> } >> handler->n_upcalls++; >> if (handler->need_signal && handler->n_upcalls >= FLOW_MISS_MAX_BATCH) { >> handler->need_signal = false; >> xpthread_cond_signal(&handler->wake_cond); >> } > > This is a good point. Do you want to write up a patch?
i'll take a look later. YAMAMOTO Takashi > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev