* A question no one can answer
@ 2008-02-15 2:27 Robert Stober
2008-02-15 3:01 ` weiming
2008-02-15 8:25 ` Keir Fraser
0 siblings, 2 replies; 7+ messages in thread
From: Robert Stober @ 2008-02-15 2:27 UTC (permalink / raw)
To: xen-devel
Good Afternoon,
Is it possible to limit a guest OS to a specific memory bandwidth
allocation? The purpose is to stop one guest OS from saturating the
memory bus.
Thank you,
Robert
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: A question no one can answer
2008-02-15 2:27 A question no one can answer Robert Stober
@ 2008-02-15 3:01 ` weiming
2008-02-15 3:24 ` Robert Stober
2008-02-15 8:25 ` Keir Fraser
1 sibling, 1 reply; 7+ messages in thread
From: weiming @ 2008-02-15 3:01 UTC (permalink / raw)
To: Robert Stober; +Cc: xen-devel
[-- Attachment #1.1: Type: text/plain, Size: 739 bytes --]
You mean QoS on memory bandwidth? It's an interesting question. (there are
similar problems like QoS on shared L2)
I think it's hard to do. Even for a native OS, it may only control this
indirectly by adjusting the CPU time slice. And I don't think any commercial
OS has implemented such feature yet.
Weiming
On Thu, Feb 14, 2008 at 9:27 PM, Robert Stober <rstober@platform.com> wrote:
> Good Afternoon,
>
> Is it possible to limit a guest OS to a specific memory bandwidth
> allocation? The purpose is to stop one guest OS from saturating the
> memory bus.
>
> Thank you,
>
> Robert
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
>
[-- Attachment #1.2: Type: text/html, Size: 1152 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* RE: A question no one can answer
2008-02-15 3:01 ` weiming
@ 2008-02-15 3:24 ` Robert Stober
2008-02-15 3:32 ` weiming
2008-02-15 13:05 ` Alan Cox
0 siblings, 2 replies; 7+ messages in thread
From: Robert Stober @ 2008-02-15 3:24 UTC (permalink / raw)
To: xen-devel; +Cc: weiming
[-- Attachment #1.1: Type: text/plain, Size: 1656 bytes --]
Weiming,
I agree that it is very hard, and that no one has done it. But
nevertheless I suggest the following question to the Xen developers:
Given the fact that memory bandwidth is shared amongst multiple cores on
a single die, assume that one VM is running on each core. What is to
stop one VM from saturating the memory bus, causing reduced performance
of all the other VMs? This is the general multi-core problem, not
specific to Xen. But it affects Xen greatly. What use is it to allocate
memory to a VM if it can't use the memory because a process of another
VM has saturated the memory bus?
Thank you,
Robert
_____
From: weiming [mailto:zephyr.zhao@gmail.com]
Sent: Thursday, February 14, 2008 7:02 PM
To: Robert Stober
Cc: xen-devel@lists.xensource.com
Subject: Re: [Xen-devel] A question no one can answer
You mean QoS on memory bandwidth? It's an interesting question.
(there are similar problems like QoS on shared L2)
I think it's hard to do. Even for a native OS, it may only
control this indirectly by adjusting the CPU time slice. And I don't
think any commercial OS has implemented such feature yet.
Weiming
On Thu, Feb 14, 2008 at 9:27 PM, Robert Stober
<rstober@platform.com> wrote:
Good Afternoon,
Is it possible to limit a guest OS to a specific memory
bandwidth
allocation? The purpose is to stop one guest OS from
saturating the
memory bus.
Thank you,
Robert
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
[-- Attachment #1.2: Type: text/html, Size: 3761 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: A question no one can answer
2008-02-15 3:24 ` Robert Stober
@ 2008-02-15 3:32 ` weiming
2008-02-15 13:05 ` Alan Cox
1 sibling, 0 replies; 7+ messages in thread
From: weiming @ 2008-02-15 3:32 UTC (permalink / raw)
To: Robert Stober; +Cc: xen-devel
[-- Attachment #1.1: Type: text/plain, Size: 2195 bytes --]
Hi Robert,
The memory bus controller like Memory Controller Hub (MCH) on Intel's north
bridge should arbitrate the traffic from different cores/processors. I guess
the hardware can guarantee some kind of fairness so that no core would be
starving and the other one is busy. (just my guess, I don't know the
details)
However, control the bandwidth with priorities is difficult. Any one has
ideas to this problem?
Weiming
On Thu, Feb 14, 2008 at 10:24 PM, Robert Stober <rstober@platform.com>
wrote:
> Weiming,
>
> I agree that it is very hard, and that no one has done it. But nevertheless
> I suggest the following question to the Xen developers:
>
> Given the fact that memory bandwidth is shared amongst multiple cores on a
> single die, assume that one VM is running on each core. What is to stop one
> VM from saturating the memory bus, causing reduced performance of all the
> other VMs? This is the general multi-core problem, not specific to Xen. But
> it affects Xen greatly. What use is it to allocate memory to a VM if it
> can't use the memory because a process of another VM has saturated the
> memory bus?
>
> Thank you,
>
> Robert
>
> ------------------------------
> *From:* weiming [mailto:zephyr.zhao@gmail.com]
> *Sent:* Thursday, February 14, 2008 7:02 PM
> *To:* Robert Stober
> *Cc:* xen-devel@lists.xensource.com
> *Subject:* Re: [Xen-devel] A question no one can answer
>
> You mean QoS on memory bandwidth? It's an interesting question. (there are
> similar problems like QoS on shared L2)
>
> I think it's hard to do. Even for a native OS, it may only control this
> indirectly by adjusting the CPU time slice. And I don't think any commercial
> OS has implemented such feature yet.
>
> Weiming
>
> On Thu, Feb 14, 2008 at 9:27 PM, Robert Stober <rstober@platform.com>
> wrote:
>
> > Good Afternoon,
> >
> > Is it possible to limit a guest OS to a specific memory bandwidth
> > allocation? The purpose is to stop one guest OS from saturating the
> > memory bus.
> >
> > Thank you,
> >
> > Robert
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@lists.xensource.com
> > http://lists.xensource.com/xen-devel
> >
>
>
[-- Attachment #1.2: Type: text/html, Size: 4282 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: A question no one can answer
2008-02-15 2:27 A question no one can answer Robert Stober
2008-02-15 3:01 ` weiming
@ 2008-02-15 8:25 ` Keir Fraser
1 sibling, 0 replies; 7+ messages in thread
From: Keir Fraser @ 2008-02-15 8:25 UTC (permalink / raw)
To: Robert Stober, xen-devel
Without hardware support to help with this (which does not exist) the
hypervisor is restricted to crude methods like monitoring cache-miss
performance counters and preempting an overly-aggressive guest. It is rather
likely that to get smooth enough throttling of bandwidth you would incur
significant monitoring and scheduling overhead. It's not even certain that
this approach would work at all!
-- Keir
On 15/2/08 02:27, "Robert Stober" <rstober@platform.com> wrote:
> Good Afternoon,
>
> Is it possible to limit a guest OS to a specific memory bandwidth
> allocation? The purpose is to stop one guest OS from saturating the
> memory bus.
>
> Thank you,
>
> Robert
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: A question no one can answer
2008-02-15 3:24 ` Robert Stober
2008-02-15 3:32 ` weiming
@ 2008-02-15 13:05 ` Alan Cox
2008-02-15 19:56 ` Dan Doucette
1 sibling, 1 reply; 7+ messages in thread
From: Alan Cox @ 2008-02-15 13:05 UTC (permalink / raw)
To: Robert Stober; +Cc: weiming, xen-devel
On Thu, 14 Feb 2008 22:24:18 -0500
"Robert Stober" <rstober@platform.com> wrote:
> Weiming,
>
> I agree that it is very hard, and that no one has done it. But
> nevertheless I suggest the following question to the Xen developers:
>
> Given the fact that memory bandwidth is shared amongst multiple cores on
> a single die, assume that one VM is running on each core. What is to
> stop one VM from saturating the memory bus, causing reduced performance
> of all the other VMs? This is the general multi-core problem, not
> specific to Xen. But it affects Xen greatly. What use is it to allocate
> memory to a VM if it can't use the memory because a process of another
> VM has saturated the memory bus?
Its perfectly doable on modern x86 - you use the profiling registers and
set them up so you get a threshold interrupt when too much main memory
traffic is counted (which you use to reschedule punishing the memory
user). There are research papers on it from quite a long time back but
afaik nobody ever implemented it in production although its not too hard
to do so might be an interesting project.
Alan
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: A question no one can answer
2008-02-15 13:05 ` Alan Cox
@ 2008-02-15 19:56 ` Dan Doucette
0 siblings, 0 replies; 7+ messages in thread
From: Dan Doucette @ 2008-02-15 19:56 UTC (permalink / raw)
To: Alan Cox; +Cc: weiming, xen-devel, Robert Stober
[-- Attachment #1.1: Type: text/plain, Size: 1818 bytes --]
Hello Robert and others,
Below is a link to a presentation given at a conference last summer, where
the authors used cache colour allocation schemes to limit L2 cache overuse
by an application.
If your goal is to create a fair memory share per-guest (bandwidth or
otherwise), you may want to consider the possibility of managing it from a
level closer to the CPU.
http://www.ideal.ece.ufl.edu/workshops/wiosca07/P4Slides.pdf
Dan.
On Fri, Feb 15, 2008 at 5:05 AM, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote:
> On Thu, 14 Feb 2008 22:24:18 -0500
> "Robert Stober" <rstober@platform.com> wrote:
>
> > Weiming,
> >
> > I agree that it is very hard, and that no one has done it. But
> > nevertheless I suggest the following question to the Xen developers:
> >
> > Given the fact that memory bandwidth is shared amongst multiple cores on
> > a single die, assume that one VM is running on each core. What is to
> > stop one VM from saturating the memory bus, causing reduced performance
> > of all the other VMs? This is the general multi-core problem, not
> > specific to Xen. But it affects Xen greatly. What use is it to allocate
> > memory to a VM if it can't use the memory because a process of another
> > VM has saturated the memory bus?
>
> Its perfectly doable on modern x86 - you use the profiling registers and
> set them up so you get a threshold interrupt when too much main memory
> traffic is counted (which you use to reschedule punishing the memory
> user). There are research papers on it from quite a long time back but
> afaik nobody ever implemented it in production although its not too hard
> to do so might be an interesting project.
>
> Alan
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
>
[-- Attachment #1.2: Type: text/html, Size: 2651 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2008-02-15 19:56 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-15 2:27 A question no one can answer Robert Stober
2008-02-15 3:01 ` weiming
2008-02-15 3:24 ` Robert Stober
2008-02-15 3:32 ` weiming
2008-02-15 13:05 ` Alan Cox
2008-02-15 19:56 ` Dan Doucette
2008-02-15 8:25 ` Keir Fraser
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.