WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: [patch 0/6] Guest page hinting version 7.

To: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
Subject: [Xen-devel] Re: [patch 0/6] Guest page hinting version 7.
From: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Date: Fri, 03 Apr 2009 11:19:24 -0700
Cc: akpm@xxxxxxxx, Nick Piggin <nickpiggin@xxxxxxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, linux-mm@xxxxxxxxx, frankeh@xxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, virtualization@xxxxxxxxxxxxxx, hugh@xxxxxxxxxxx, virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
Delivery-date: Fri, 03 Apr 2009 11:19:57 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20090403104913.29c62082@skybase>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20090327150905.819861420@xxxxxxxxxx> <200903281705.29798.rusty@xxxxxxxxxxxxxxx> <20090329162336.7c0700e9@skybase> <200904022232.02185.nickpiggin@xxxxxxxxxxxx> <20090402175249.3c4a6d59@skybase> <49D50CB7.2050705@xxxxxxxxxx> <49D518E9.1090001@xxxxxxxx> <49D51CA9.6090601@xxxxxxxxxx> <49D5215D.6050503@xxxxxxxx> <20090403104913.29c62082@skybase>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 2.0.0.21 (X11/20090320)
Martin Schwidefsky wrote:
This is the basic idea of guest page hinting. Let the host memory
manager make it decision based on the data it has. That includes page
age determined with a global LRU list, page age determined with a
per-guest LRU list, i/o rates of the guests, all kind of policy which
guest should have how much memory.

Do you look at fault rates?  Refault rates?

 The page hinting comes into play
AFTER the decision has been made which page to evict. Only then the host
should look at the volatile vs. stable page state and decide what has
to be done with the page. If it is volatile the host can throw the page
away because the guest can recreate it with LESS effort. That is the
optimization.

Yes, and its good from that perspective. Do you really implement it purely that way, or do you bias the LRU to push volatile and free pages down the end of the LRU list in preference to pages which must be preserved? If you have a small bias then you can prefer to evict easily evictable pages compared to their near-equivalents which require IO.

But with page hinting you don't have to even ask. Just take the pages
if you need them. The guest already told you that you can have them by
setting the unused state.

Yes. But it still depends on the guest. A very helpful guest could deliberately preswap pages so that it can mark them as volatile, whereas a less helpful one may keep them persistent and defer preswapping them until there's a good reason to do so. Host swapping and page hinting won't put any apparent memory pressure on the guest, so it has no reason to start preswapping even if the overall system is under pressure. Ballooning will expose each guest to its share of the overall system memory pressure, so they can respond appropriately (one hopes).

   J

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>