On Tuesday 19 August 2008 20:31, Andi Kleen wrote:
Yes, smallish mmaps. But larger ones weren't much better.
It wasn't actually the TLB flushing side of it that was causing
the slowdown IIRC. It's just all over the map.
Notifier hooks; accounting statistics; 4lpt; cond_resched and
low latency code causing functions to spill more to stack; cache
misses from data structures increasing or becoming unaligned...
Basically just lots of little straws that added up to kill the
camel. I didn't even get to the bottom of the whole thing. But
my point is that even 1% here and there eventually adds up to a
big headache for someone. For some features it is obviously
inevitable to slowdown, but in all other cases we should always
be aiming to make the kernel faster rather than slower.
--