Re: [RFC/T/D][PATCH 2/2] Linux/Guest cooperative unmapped page cache control

Avi Kivity
2010-06-14T15:44:40Z

On 06/14/2010 06:33 PM, Dave Hansen wrote:
> On Mon, 2010-06-14 at 16:01 +0300, Avi Kivity wrote:
>
>> If we drop unmapped pagecache pages, we need to be sure they can be
>> backed by the host, and that depends on the amount of sharing.
>>
> You also have to set up the host up properly, and continue to maintain
> it in a way that finds and eliminates duplicates.
>
> I saw some benchmarks where KSM was doing great, finding lots of
> duplicate pages. Then, the host filled up, and guests started
> reclaiming. As memory pressure got worse, so did KSM's ability to find
> duplicates.
>

Yup. KSM needs to be backed up by ballooning, swap, and live migration.

> At the same time, I see what you're trying to do with this. It really
> can be an alternative to ballooning if we do it right, since ballooning
> would probably evict similar pages. Although it would only work in idle
> guests, what about a knob that the host can turn to just get the guest
> to start running reclaim?
>

Isn't the knob in this proposal the balloon? AFAICT, the idea here is
to change how the guest reacts to being ballooned, but the trigger
itself would not change.

My issue is that changing the type of object being preferentially
reclaimed just changes the type of workload that would prematurely
suffer from reclaim. In this case, workloads that use a lot of unmapped
pagecache would suffer.

btw, aren't /proc/sys/vm/swapiness and vfs_cache_pressure similar knobs?

--
error compiling committee.c: too many arguments to function