I noticed today that the ARC statistics are maintained with atomic operations. 
(This is even called out in a comment, so it?s not a great insight.)

This seems like a potential scalability problem on multi-CPU systems. The cache 
line involved is going to bounce back and forth at a fairly high rate.

These statistics should probably be kept on a per-CPU basis.  (Nothing actually 
reads them right now, so the cost of aggregation is 0 at present.  ;-)  
Switching to non-atomic operations doesn't buy a whole lot since the writes 
will force cache line exclusivity anyway.
--
This messages posted from opensolaris.org

Reply via email to