Module Name: src
Committed By: ad
Date: Thu Dec 5 18:50:41 UTC 2019
Modified Files:
src/common/lib/libc/gen: radixtree.c
Log Message:
Delete the counter from "struct radix_tree_node", and in the one place we
need a non-zero check, substitute with a deterministic bitwise OR of all
values in the node. The structure then becomes cache line aligned.
For each node we now need only touch 2 cache lines instead of 3, which makes
all the operations faster (measured), amortises the cost of not having a
counter, and will avoid intra-pool-page false sharing on MP.
To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/common/lib/libc/gen/radixtree.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.