Messages in this thread | | | Subject | Re: RFC: remove __read_mostly | From | Andi Kleen <> | Date | Fri, 14 Dec 2007 01:33:45 +0100 |
| |
Kyle McMartin <kyle@mcmartin.ca> writes:
> I'd bet, in the __read_mostly case at least, that there's no > improvement in almost all cases.
I bet you're wrong. Cache line behaviour is critical, much more than pipeline behaviour (which unlikely affects). That is because if you eat a cache miss it gets really expensive, which e.g. a mispredicted jump is relatively cheap in comparison. We're talking one or more orders of magnitude.
I admit I'm to blame for both (submitted unlikely and asked for __read_mostly) and I now consider unlikely a mistake now by hindsight, but still think __read_mostly was a good idea.
There is one potential problem in that if __read_mostly is used too aggressively then the non __read_mostly variables will be all "write mostly" with nothing inbetween and that could lead to more false sharing, but so far this doesn't seem to be a big problem (and that one could be solved too)
-Andi
| |