Hi all, So I have been playing around with XCP and the static/dynamic memory parameters. I have a few behavioral questions I would like to pin down: -Is the static-max quantity of free memory on the host always required before the guest vm can be started? I assume so since you don''t know a-priori if the guest you are booting supports Xen or not. But if this is true, what is the use of static-min? When I boot a guest does it just determine the highest memory it can take in the range of static-min to static-max, given any ability to shrink other guests that have Xen-enabled kernels? -For guests running xen-enabled kernels, wouldn''t it actually be better if dynamic-max could be higher than static-max? IE you could imagine that you have a lot of VMs running on one host, to start new ones you need to have them boot with a small amount of physical memory (say 256MB), but if any one of them is under memory pressure you would like it to be able to grow up to some cap, say 1024MB or some such, pending free memory being available to pull from other guests, or just plain free on the host. -I have a host with 4GB of memory, I configured 3 debian lenny guests all running the xen-enabled kernel, they were set to have static max of 3GB, static min of 256MB, dynamic-max of 512MB, dynamic-min of 256MB. I logged in to one of them and put significant memory pressure on it, hoping I could get guest''s memory to grow while the others were idle. However my experience was the guest''s would set their memory directly at whatever dynamic-max is set to. Is there any way for the guests to adjust their memory footprint on the fly based on their memory pressure? IE what I''d really like is: --boot-memory: the quantity of memory used to boot the guest, similar to static-max --dynamic-max: the largest quantity of memory the guest could potentially grow to, this could be greater than boot-memory And then through a combination of ballooning, etc, for kernel supported guests you could keep the actual dynamic memory as low as possible (without damaging performance), but allow other guests that need to temporarily grow/shrink to do so. This would all need some sort of fairness policy etc. Is anything like this currently enabled in XCP? And if not, what components exist, or would be needed for something like this? Thanks, David _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Pasi Kärkkäinen
2010-Jan-13 07:10 UTC
Re: [Xen-users] XCP Memory static/dynamic and overcommit
On Tue, Jan 12, 2010 at 04:57:42PM -0800, David Erickson wrote:> Hi all, > So I have been playing around with XCP and the static/dynamic memory > parameters. I have a few behavioral questions I would like to pin > down: >Hello, Did you read XCP and/or XenServer docs? I''m not sure if those will answer the questions below, but at least worth checking out. -- Pasi> -Is the static-max quantity of free memory on the host always required > before the guest vm can be started? I assume so since you don''t know > a-priori if the guest you are booting supports Xen or not. But if > this is true, what is the use of static-min? When I boot a guest does > it just determine the highest memory it can take in the range of > static-min to static-max, given any ability to shrink other guests > that have Xen-enabled kernels? > > -For guests running xen-enabled kernels, wouldn''t it actually be > better if dynamic-max could be higher than static-max? IE you could > imagine that you have a lot of VMs running on one host, to start new > ones you need to have them boot with a small amount of physical memory > (say 256MB), but if any one of them is under memory pressure you would > like it to be able to grow up to some cap, say 1024MB or some such, > pending free memory being available to pull from other guests, or just > plain free on the host. > > -I have a host with 4GB of memory, I configured 3 debian lenny guests > all running the xen-enabled kernel, they were set to have static max > of 3GB, static min of 256MB, dynamic-max of 512MB, dynamic-min of > 256MB. I logged in to one of them and put significant memory pressure > on it, hoping I could get guest''s memory to grow while the others were > idle. However my experience was the guest''s would set their memory > directly at whatever dynamic-max is set to. Is there any way for the > guests to adjust their memory footprint on the fly based on their > memory pressure? IE what I''d really like is: > > --boot-memory: the quantity of memory used to boot the guest, similar > to static-max > --dynamic-max: the largest quantity of memory the guest could > potentially grow to, this could be greater than boot-memory > > And then through a combination of ballooning, etc, for kernel > supported guests you could keep the actual dynamic memory as low as > possible (without damaging performance), but allow other guests that > need to temporarily grow/shrink to do so. This would all need some > sort of fairness policy etc. Is anything like this currently enabled > in XCP? And if not, what components exist, or would be needed for > something like this? > > Thanks, > David > > _______________________________________________ > Xen-users mailing list > Xen-users@lists.xensource.com > http://lists.xensource.com/xen-users_______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
David Erickson
2010-Jan-15 00:34 UTC
Re: [Xen-users] XCP Memory static/dynamic and overcommit
On Tue, Jan 12, 2010 at 11:10 PM, Pasi Kärkkäinen <pasik@iki.fi> wrote:> On Tue, Jan 12, 2010 at 04:57:42PM -0800, David Erickson wrote: >> Hi all, >> So I have been playing around with XCP and the static/dynamic memory >> parameters. I have a few behavioral questions I would like to pin >> down: >> > > Hello, > > Did you read XCP and/or XenServer docs? > I''m not sure if those will answer the questions below, but at least > worth checking out.So all the current docs say that everything except static-max is unused, however this is not my experience as I mentioned, in that when running a cooperative kernel with a ballooning driver you actually will change the amount of memory the guest says is available (via top, etc). Can someone comment on the changes that have been made in XCP with the static min and dynamic min/max now being used? Thanks, David _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users