On Thu, Apr 27, 2017 at 10:39:15AM +0800, 杨润垲 wrote: > If the packet can't match the flow table in the kernel module, it > will be delivered to ovs-vswitchd. Recv_upcalls() is a part of > ovs-vswitchd, the number of packets handled in recv_uopcalls()is > UPCALL_MAX_BATCH(default is 50), could you tell me the reason why > it's designed so? thank you!
> When ovs-vswitchd finishes the process, it passes the packets back to the > datapath one by one or transfer them together? > Looking forward to your reply.Thank you! If you run "git log -SMAX_BATCH" and go to the end, you can find commits that describe the benefits, such as the following: commit 9b16c4394b940573d733c47fa7213bbe99a456d9 Author: Ben Pfaff <b...@nicira.com> Date: Thu Nov 10 16:42:51 2011 -0800 ofproto-dpif: Process multiple batches of upcalls in a single poll loop. This yields a 27% improvement in netperf CRR results in my tests versus the previous commit, which is a 52% improvement versus the baseline from just before the poll_fd_woke() optimization was removed. commit 501f8d1fd75b316ee7fa7c039cb37110750bf5a1 Author: Ben Pfaff <b...@nicira.com> Date: Fri Oct 14 13:55:32 2011 -0700 ofproto-dpif: Batch interacting with the dpif on flow miss operations. This improves "ovs-benchmark rate" performance in my testing by about 24%. A quick experiment shows that there may still be some headroom for batching flow deletions on facet expiration, up to perhaps 10% additional improvement. _______________________________________________ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss