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

Re: [Xen-devel] copy on write memory



> Could the same thing not work using an event-channel rather than a 
> hypercall then?  I guess you basically do the same when giving your 
> pages away for a driver to fill them up with data?
> My main point is that the domains have better knowledge about what pages 
> are likely to be shareable than dom0 or Xen has, and so should volunteer 
> to share them, and somehow be rewarded.

Equally, a centralised "buffer cache" domain can see request traffic
and observe empirically what pages are most beneficial to share. :-)
Both ways round could be interesting to experiment with though.

> The problem of reclamation-policy will exist for any solution that 
> over-reserves memory, including the transparent VMWare system. For some 
> pages, like the guest OS kernel text area, it would be ok to remove 
> these pages from the domain's allowance for good -- it will not need to 
> CoW these, and the domain builder could simply build that part of the 
> domain from shared pages.

Well, you also can over-commit on stuff that is read-only and fault in
on demand, just as you can demand-CoW writable stuff e.g., no need to
have all of kernel or glibc in memory all the time -- only hot parts
of both will be in use by the system at any time.

i.e., 
 1. There is fault in from no page -> shareable page on read accesses.
 2. There is fault from shareable page -> shareable page + exclusive
    page on write accesses. 
 Both of these require extra allocation of memory.

> Perhaps this should just be a one-way street, you give up pages to be 
> nice to others (and get cheaper hosting or whatever kind of reward you 
> can think of in return), and then you lose the right to write to them 
> for good.  Should you need more writable pages, you will have to re-grow 
> your reservation, and if that fails you will need to flush some slabs or 
> buffer caches or or page stuff to disk or whatever you do in Linux when 
> you have memory pressure.  Ultimately you may want to migrate to a less 
> loaded machine.

It's another way of looking at the problem (end-to-end style I
suppose). Potetntially worth investigating. :-)

 Cheers,
 Keir


-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

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