[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Xen Memory De-duplication



On Sun, Oct 10, 2010 at 10:54:58AM +0530, Aditya Gadre wrote:
>    This kind of implementation will require the disk blocks from different
>    DomUs to be mapped to same physical disk block.
>    For example,
>    1) Shared read only filesystem
>    2) Union based filesystem
>    3) Virtual machine images deployed on a host filesystem which has
>    deduplication enabled
> 

I guess Xen blktap qcow* images should do? And maybe blktap2 VHD? 

-- Pasi

>    What kind of  arrangement of filesystem is used in production environments
>    for DomUs which host large number of VMs as in cloud enviorment?
> 
>    On Sun, Oct 10, 2010 at 5:10 AM, Dan Magenheimer
>    <[1]dan.magenheimer@xxxxxxxxxx> wrote:
> 
>      I*m not an expert on it but I believe this sounds very similar to the
>      page sharing implementation that already exists in Xen 4.0.  The
>      implementation in Xen only works on HVM guests and only on machines that
>      have EPT though.  The patches (which were accepted into Xen) were posted
>      here:
> 
> 
> 
>      
> [2]http://lists.xensource.com/archives/html/xen-devel/2009-12/msg00797.html
> 
> 
> 
>      From: Aditya Gadre [mailto:[3]adivb2003@xxxxxxxxx]
>      Sent: Saturday, October 09, 2010 11:56 AM
>      To: [4]Xen-devel@xxxxxxxxxxxxxxxxxxx
>      Subject: [Xen-devel] Xen Memory De-duplication
> 
> 
> 
>      Aim is to implement Xen Memory Deduplication with minimum overhead.
> 
>      Our approach to de-duplication is as follows
> 
>      In most cases, Domain-U uses a small set of well-known operating systems
>      such as Linux, FreeBSD and Microsoft Windows. In such environment many
>      domains share read-only filesystems that contain operating system and
>      frequently usedprogram files and libraries.Each domain has their own
>      writable filesystems for storing data and temporary files. In this
>      configuration, multiple pages scattered in different domains mostly
>      happen to contain same disk block. So, in our approach to perform
>      deduplication we intend to add a data structure in dom 0 which store
>      disk block number and the machine frame number(MFN) when a read request
>      for the read only code(and data) is made. Now when another domain U
>      places the request for the block of code and Dom 0 recieves a request
>      for I/O (DMA), it will first check into the data structure for the entry
>      for the block. If it finds the block it will return the MFN of the
>      already read page and map it to the requesting domain's PFN resulting in
>      zero I/O processing time of blocks which are already read. This in turn
>      results in de-duplication of the read only pages accessed by multiple
>      domains without any overhead of hashing the page.
> 
>      Test case scenario:
> 
>      Consider a Dom0 linux kernel using a filesystem with deduplication
>      enabled. Then we install a DomU kernel with the virtual disk as a image
>      file on the disk(.img). Then we make multiple copies of the image to
>      deploy multiple DomUs running same kernel. Now, as deduplication is
>      enabled in the file system initially all the blocks of the domains will
>      be pointing to the same disk blocks. Now when the kernel's are booted,
>      they all will consume memory only once for the programs(code segment)
>      loaded in the memory. Now as these OSs start to write to their own
>      virtual filesystems the blocks of the image will be COW'ed by the
>      filesystem resulting in different block number.
>      Is such a approach implemented?  We intend to implement this as a
>      project. What are the suspected challanges?
> 
>      Regards,
>      Aditya Gadre
> 
> References
> 
>    Visible links
>    1. mailto:dan.magenheimer@xxxxxxxxxx
>    2. http://lists.xensource.com/archives/html/xen-devel/2009-12/msg00797.html
>    3. mailto:adivb2003@xxxxxxxxx
>    4. mailto:Xen-devel@xxxxxxxxxxxxxxxxxxx

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.