[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] GPLPV memory ballooning and x32
> > The position of invalid entries in the P2M are not important. IIRC all entries > start PoD. If Windows can allocate without zeroing the memory (for which > you'll need MmAllocatePagesForMdlEx, so 2k3 SP1+) then the entry will remain > PoD until the decrease reservation makes it invalid. Otherwise, there will be > a populate followed by an immediate invalidation, which will clearly slow > things down a little but is not disastrous. Providing the total number of > populated pages does not reach the dynamic-max threshold, everything is fine. That was my next question. So decrease_reservation on a unpopulated PoD page is okay. I think I have all the pieces of the puzzle then, and I don't think I have to do anything different to what I'm doing now (except maybe some accounting changes), which is always nice :) > The only caveat with Windows is that it is good to balloon early because > allocating enough guest pages to fulfill a balloon-down gets harder as the > myriad of Windows kernel modules can quite aggressively land-grab in my > experience. It's also pretty good at letting go of memory when under pressure. My balloon down runs in a loop with a timer on it - if it fails to get enough memory to balloon down it just waits a bit (1 second I think) then tries to grab some more, and there is usually enough available by then. Unless you are getting silly with the amount of ballooning then it's normally straight forward. My test 2K3 DomU starts at 512MB and I can balloon it down to about 300MB shortly after boot before MmAllocatePagesForMdlEx starts failing to allocate memory, and then another 20 seconds of going around the loop before I get down to about 200MB. I haven't tried to go lower than that but I suspect it wouldn't end well if I tried :) My Balloon up is the same - it just keeps trying to get memory until Xen has some free. I should probably put a backoff in there though. Thanks for the info! James _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |