[EDIT] although it is tricky to do optimally given that different processors will have different cache set characteristics (as the article shows).
[EDIT] although it is tricky to do optimally given that different processors will have different cache set characteristics (as the article shows).
And most of the programmers make much bigger omissions than those mentioned in this topic. Like using wrong algorithms, wrong libraries, doing too many allocations, having bad structures of the data... So this topic effects are invisible unless you already fixed other issues.
If your structures happen to be very close to the system's page size it could easily happen, then you'd need to avoid this yourself with your own incremental allocator (or other tricks).
Definitely agree with your last point, I've seen lots of code (in commercial applications) where people are optimising completely the wrong thing.