Hi Ingo, Steven, Thomas,
The following series are the scraps from adaptive-locks-v3 that have not yet
been pulled into RT. This series applies to 25.4-rt2.
For the most part, this is the difference between adaptive-v3 and whats in
the upstream tree, with the following exceptions:
1) I have fixed an issue in the "optimize-wakeup" patch that went out in v3.
There was a hunk left-over from when we applied adaptive to both spinlocks
and mutexes. We have since dropped mutexes, so that patch needed to be
refactored to be correct.
2) I have (for now) dropped the timeout feature. It needs to be re-worked to
apply to the current version of adaptive-locks that are in the tree.
I also moved what was patch 6/8 in v3 to be first, because I believe it has
the most potential of all the other patches to improve performance.
I have performed some baseline analysis of these patches compared to
25.4-rt2, which you can find here:
ftp://ftp.novell.com/dev/ghaskins/25.4-rt2-adaptive-enhancements.pdf
I only did hackbench runs for this round of testing, but you can see there is
a small, but net-positive gain in the results. I think the results are more
profound for other benchmarks, but I didnt have the time to re-run them all
yet.
As always, comments/questions welcome.
Regards,
-Greg
--