![]() | |||||||||||
Messages in this thread |
On Friday 11 March 2005 03:03, Christoph Lameter wrote: > Changelog: > - use Kconfig and CONFIG_CLEAR_PAGES > > The zeroing of a page of a arbitrary order in page_alloc.c and in hugetlb.c may benefit from a > clear_page that is capable of zeroing multiple pages at once. The following patch adds > a function "clear_pages" that is capable of clearing multiple continuous pages at once. > > Patch against 2.6.11-bk6 > > Signed-off-by: Christoph Lameter <clameter@sgi.com> [snip] > -clear_page_end: > +clear_pages_end: > > /* C stepping K8 run faster using the string instructions. > It is also a lot simpler. Use this when possible */ Andi Kleen (iirc) says that non-temporal stores seem to be big win in microbenchmarks (and I second that), but they are a net loss when we are going to use zeroed page just after zeroing. He recommends avoid using non-temporal stores With this new page prezeroing infrastructure, that argument most likely is not right anymore. Especially clearing of high-order pages definitely will benefit from NT stores because they do not kill L1 data cache in the process. I don't have K8 and therefore cannot be 100% sure, but I really doubt that K8 optimize "rep stosq" into _NT_ stores. Andi? -- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||
| Last update: 2005-03-22 14:11 [from the cache] ©2003-2008 | |||||||||||