srcu: Adjust default auto-expediting holdoff
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 27 Apr 2017 14:52:35 +0000 (07:52 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 27 Apr 2017 15:35:24 +0000 (08:35 -0700)
The default value for the kernel boot parameter srcutree.exp_holdoff
is 50 microseconds, which is too long for good Tree SRCU performance
(compared to Classic SRCU) on the workloads tested by Mike Galbraith.
This commit therefore sets the default value to 25 microseconds, which
shows excellent results in Mike's testing.

Reported-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Tested-by: Mike Galbraith <efault@gmx.de>
kernel/rcu/srcutree.c

index 74c283f9d15e5c8b8395fccd1b0606abf72c283b..87b070de637119c8a50c52d454e88ca998fd3a83 100644 (file)
@@ -39,7 +39,7 @@
 
 #include "rcu.h"
 
-ulong exp_holdoff = 50 * 1000; /* Holdoff (ns) for auto-expediting. */
+ulong exp_holdoff = 25 * 1000; /* Holdoff (ns) for auto-expediting. */
 module_param(exp_holdoff, ulong, 0444);
 
 static void srcu_invoke_callbacks(struct work_struct *work);