Re: PG_zero

Martin J. Bligh
2004-10-31T15:18:12Z

--Andrew Morton <akpm@osdl.org> wrote (on Saturday, October 30, 2004 14:07:32 -0700):

> Andrea Arcangeli <andrea@novell.com> wrote:
>>
>> I think it's much better to have PG_zero in the main page allocator than
>> to put the ptes in the slab. This way we can share available zero pages with
>> all zero-page users and we have a central place where people can
>> generate zero pages and allocate them later efficiently.
>
> Yup.
>
>> This gives a whole internal knowledge to the whole buddy system and
>> per-cpu subsystem of zero pages.
>
> Makes sense. I had a go at this ages ago and wasn't able to demonstrate
> much benefit on a mixed workload.
>
> I wonder if it would help if the page zeroing in the idle thread was done
> with the CPU cache disabled. It should be pretty easy to test - isn't it
> just a matter of setting the cache-disable bit in the kmap_atomic()
> operation?

I looked at the basic problem a couple of years ago (based on your own code,
IIRC Andrew) then Andy (cc'ed) did it again with cache writethrough. It
doesn't provide any benefit at all, no matter what we did, and it was
finally ditched.

I wouldn't bother doing it again personally ... perhaps Andy still has
the last set of results he can send to you.

M.