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

Re: [Xen-API] Windows Balloon Driver

Thanks for the heads up Paul.

On Thu, Jun 27, 2013 at 1:40 PM, Paul Durrant <Paul.Durrant@xxxxxxxxxx> wrote:



  XENUTIL is actually part of the XS legacy PV drivers (which are only used for XP and 2K3, OS that will both go EOL pretty soon). These are very much in maintenance-only mode and because of that, and other issues, we have not released the source. The actively developed and maintained PV drivers (for Vista onwards) can be found on github. The balloon code is part of the xenbus driver and you can find it at https://github.com/xenserver/win-xenbus/blob/master/src/xenbus/balloon.c


I was using Windows 2008 guests with older XS tools.
I've updated the XS tools to latest and now I see there is no BalloonWorkerThread. Yet I see many calls such as

XENBUS|__BalloonAllocatePfnArray: 8185 page(s) at 8185000 pages/s
XENBUS|__BalloonDecreaseReservation: 8185 page(s) at 545666 pages/s
XENBUS|__BalloonReleasePfnArray: 8185 page(s) at 545666 pages/s
and finally a
XENBUS|BalloonInflate: <==== 3932160 page(s) in 22308ms

Another Balloon test showed XENBUS|BalloonInflate: <==== 8021300 page(s) in 258322ms

So is above Inflation time spent only on releasing pages without cleaning them ? 
Or is there any other task which has to be done before releasing pages ?

My experimental goal is to improve the boot time in case of DMC on windows 2008.

  As for memory cleaning, you’ll find that this is not done. __BalloonAllocatePagesForMdl() makes use of MmAllocatePagesForMdlEx() which has a MM_DONT_ZERO_ALLOCATION option to avoid touching pages that are allocated. This is done to avoid needlessly faulting in populate-on-demand pages which will be immediately handed back to Xen.




From: xen-api-bounces@xxxxxxxxxxxxx [mailto:xen-api-bounces@xxxxxxxxxxxxx] On Behalf Of Rushikesh Jadhav
Sent: 26 June 2013 22:39
To: xen-api@xxxxxxxxxxxxx
Subject: [Xen-API] Windows Balloon Driver


Hi List,


I tried to find windows balloon driver code on github but somehow not able to locate it. I'm particularly interested in optimizing XENUTIL: BalloonWorkerThread.


What I want to achieve is to disable the memory cleaning process while the balloon is inflated in guest. The ballooning code is quite slow in case of windows but very fast (I think no cleaning is done) for Linux PV guests.


Any ideas or help to get me started ?




XS rocks !!

Xen-api mailing list



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