The default number of miss handlers should be the number of processors minus two to account for the dispatcher and main threads.
Signed-off-by: Ethan Jackson <et...@nicira.com> --- ofproto/ofproto.c | 5 +++-- vswitchd/vswitch.xml | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index a9a20b8..abf14f2 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -642,14 +642,15 @@ ofproto_set_mac_table_config(struct ofproto *ofproto, unsigned idle_time, } /* Sets number of upcall handler threads. The default is - * (number of online cores - 1). */ + * (number of online cores - 2). */ void ofproto_set_n_handler_threads(unsigned limit) { if (limit) { n_handler_threads = limit; } else { - n_handler_threads = MAX(1, sysconf(_SC_NPROCESSORS_ONLN) - 1); + int n_proc = sysconf(_SC_NPROCESSORS_ONLN); + n_handler_threads = n_proc > 2 ? n_proc - 2 : 1; } } diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml index 9a48eb1..4b42ec7 100644 --- a/vswitchd/vswitch.xml +++ b/vswitchd/vswitch.xml @@ -163,7 +163,7 @@ type='{"type": "integer", "minInteger": 1}'> <p> Specifies the number of threads for software datapaths to use for - handling new flows. The default is one less than the number of + handling new flows. The default is two less than the number of online CPU cores (but at least 1). </p> <p> -- 1.7.9.5 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev