On Tue, 13 Mar 2007, Paul Mackerras wrote: > Also, I didn't understand why we have to do quicklists to take > advantage of the fact that the pages are in a pristine state when they > are freed. I thought the whole point of the slab allocator was to be > able to take advantage of that...
It used to be the case that initializating objects was better in the past. Today it is better to initialize the objects immediately before they are used. That will move them into the cpu caches and keep them there. Initializing them earlier may cause the cachelines of the object to be evicted from the cpu cache and then those have to be refetched. The benefit of this approach diminishes the larger objects get and the sparser the access to the cachelines of the object. In the case of page sized objects that are sparsely accessed (the PAGE_SIZE caches covered by quicklists) it makes sense to attempt to avoid having to touch all cachelines of the page on alloc. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/