git: Remove nearly all MP contention from ip_randomid()
Matthew Dillon
dillon at crater.dragonflybsd.org
Mon Sep 7 19:25:25 PDT 2009
commit 93992dc9adff19ba1fc7dbc18499aa0f78aba2d5
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Mon Sep 7 19:21:34 2009 -0700
Remove nearly all MP contention from ip_randomid()
* Instead of using two global spinlocks split the id space up into
ncpus_fit independant sections and shuffle within each section.
* Aggregate the random number generation into blocks of 32, on a
per-cpu basis, to reduce cpu contention there.
Using-test-output-by: Aggelos Economopoulos <aoiko at cc.ece.ntua.gr>
Summary of changes:
sys/netinet/ip_id.c | 49 +++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 41 insertions(+), 8 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/93992dc9adff19ba1fc7dbc18499aa0f78aba2d5
--
DragonFly BSD source repository
More information about the Commits
mailing list