[vbox-dev] Kernel Samepage Merging

Achim Hasenmueller achim at sun.com
Mon Nov 16 10:07:13 GMT 2009


this feature is on our roadmap. However, we would not rely on Linux KSM as it would only help us on very recent Linux kernels whereas VirtualBox spans a long list of supported platforms.

The implementation will be part of the vboxdrv kernel driver which handles memory page allocation for all VMs on the system. It would be very similar to Linux KSM in the way it works (it's quite obvious do it like that). We've designed it years ago but never gotten around to actually implementing it. One reason for that is that we are not big fans of that feature. It brings a lot of practical issues and it's the perfect way of shooting yourself in the foot. However, there's a lot of hype about it so we're going to add it to our feature list.

Help would be much appreciated though :-)  We're shooting for VirtualBox 3.2.


On Nov 9, 2009, at 10:28 , James Lucas wrote:

> I thought I would try something a little bit more complex for my next go at
> delving into the VirtualBox source code however have become stuck and am hoping
> that someone from Sun can give me a pointer in the right direction.
> Kernel Samepage Merging has come to the linux kernel (Released in RHEL5.4 and
> Fedora 12) and is utilised by KVM to perform memory overcommit for virtual
> machines. Where exactly does VirtualBox allocate the VM memory structures? I
> was finding code over the MM and PGM code but not exactly sure where the actual
> allocation occurs.
> I suspect that both the VirtualBox runtime and the host memory can be tagged as
> mergeable. Host memory might be the best one to test out first (the code change
> is trivial and advises the kernel that the memory is mergeable and request the
> kernel to scan for identical pages)
> I hope someone is able to help.
> --
> UTS CRICOS Provider Code:  00099F
> DISCLAIMER: This email message and any accompanying attachments may contain
> confidential information.  If you are not the intended recipient, do not
> read, use, disseminate, distribute or copy this message or attachments.  If
> you have received this message in error, please notify the sender
> immediately and delete this message. Any views expressed in this message
> are those of the individual sender, except where the sender expressly, and
> with authority, states them to be the views the University of Technology,
> Sydney. Before opening any attachments, please check them for viruses and
> defects.
> _______________________________________________
> vbox-dev mailing list
> vbox-dev at virtualbox.org
> http://vbox.innotek.de/mailman/listinfo/vbox-dev

More information about the vbox-dev mailing list