[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] what happens when a PoD page is touched?
> > > The exception to this would be the case where you're allocating N > > pages, where N > (used_pages - total allocation). > > > > I guess try allocating fewer pages before returning them to Xen, and > > seeing if that helps at all. > > I tried returning 64KB at a time (eg 16 pages) instead of 1MB but it > doesn't improve things. Xen should just repopulate every page I allocate > with the pages I just returned and things should fly along but it's not > working that way. > > Just taking a step back for a sec, maybe I'm doing something else wrong. > My balloon down code allocates memory from Windows with > MmAllocatePagesForMdlEx then hands the pages to Xen with > XENMEM_decrease_reservation. Is that all I need to do? I notice that > Linux makes a call to set_phys_to_machine(INVALID_P2M_ENTRY) for each > page, even in the hvm case. Is that some function I need to mirror too > or is that just internal Linux housekeeping and not required under > Windows? > Hmmm... I think I'm chasing the wrong problem here. I measured time taken to allocate the memory, and then time taken to decrease reservation, and the decrease reservation time is 6x longer than the memory allocation time (as measured by the TSC/KeQueryPerformanceCounter). That approximately equates to 18 seconds to allocate and scrub 3.5GB of memory, and 111 seconds in calls to decrease reservation. This measurement is consistent across a few boots so I assume it's not an artefact of using the TSC under a virtualised environment... James _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |