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

Re: [Xen-devel] Seamlessly sharing identical memory pages among domains

To: "Scheer, Roque" <roque.scheer@xxxxxx>
Subject: Re: [Xen-devel] Seamlessly sharing identical memory pages among domains
From: Ian Pratt <Ian.Pratt@xxxxxxxxxxxx>
Date: Fri, 21 May 2004 02:17:54 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxxxx, Ian.Pratt@xxxxxxxxxxxx
Delivery-date: Fri, 21 May 2004 02:19:58 +0100
Envelope-to: steven.hand@xxxxxxxxxxxx
In-reply-to: Your message of "Thu, 20 May 2004 10:18:50 -0300." <8D41D1F60264314591FA7C0B012EB7BB58615B@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-archive: <http://sourceforge.net/mailarchive/forum.php?forum=xen-devel>
List-help: <mailto:xen-devel-request@lists.sourceforge.net?subject=help>
List-id: List for Xen developers <xen-devel.lists.sourceforge.net>
List-post: <mailto:xen-devel@lists.sourceforge.net>
List-subscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=subscribe>
List-unsubscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=unsubscribe>
Sender: xen-devel-admin@xxxxxxxxxxxxxxxxxxxxx
> I'd like to know if XEN is or will be implementing any mechanism for
> transparently sharing pages with identical content among domains, to
> minimize memory consumption, similar to what is implemented in VMWare's
> ESX server (chapter 4 of the paper whose link is below).

I'm not convinced there's that much sharing to be had between
VMs: One side effect of implementing some test code for live
migration was that I collected some traces containing crc
fingerprints of the memory pages of several domains. There
weren't many hashes in common.  Perhaps this shouldn't be
surprising -- application text is typically small compared to the
heap data they operate on. The actual datasets operated on by
domains are typically distinct.

However, there might be some value in having a shared read-only
buffer cache, if only for the saved IO ops.  Implementing a cache
that replicates pages in memory (rather than sharing) is trivial.

Doing a proper shared cache is slightly trickier given the
paravirtualised memory interface -- we'd have to introduce guests
to a new kind of write fault: "A write fault has occurred, and
you'll have to copy the page because this machine page is
immutable as it is already shared with other domains". Modifying
Linux to handle this wouldn't be hard.

Of course, if you're running a domain on Xen's shadow page tables
then all of this manipulation is easy and can be done
transparently to the domain. Of course, you pay a performance
penalty...

Ian


-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. 
Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel