All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Xu, Dongxiao" <dongxiao.xu@intel.com>
To: Jan Beulich <jbeulich@suse.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"george.dunlap@eu.citrix.com" <george.dunlap@eu.citrix.com>
Cc: "Auld, Will" <will.auld@intel.com>,
	"Ian.Campbell@citrix.com" <Ian.Campbell@citrix.com>,
	"Nakajima, Jun" <jun.nakajima@intel.com>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: Xen Platform QoS design discussion
Date: Fri, 30 May 2014 07:51:50 +0000	[thread overview]
Message-ID: <40776A41FC278F40B59438AD47D147A911A2121E@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <538831F102000078000B534F@mail.emea.novell.com>

> -----Original Message-----
> From: Jan Beulich [mailto:jbeulich@suse.com]
> Sent: Friday, May 30, 2014 2:23 PM
> To: andrew.cooper3@citrix.com; george.dunlap@eu.citrix.com; Xu, Dongxiao
> Cc: Ian.Campbell@citrix.com; Nakajima, Jun; Auld, Will; xen-devel@lists.xen.org
> Subject: Re: RE: [Xen-devel] Xen Platform QoS design discussion
> 
> >>> "Xu, Dongxiao" <dongxiao.xu@intel.com> 05/30/14 3:07 AM >>>
> >> While I can see the use and attraction of a generic MSR access
> >> hypercalls, using this method for getting QoS data is going to have
> >> subsantitally higher overhead than even the original domctl suggestion.
> >>
> >> I do not believe it will be an effective means of getting large
> >> quantities of data from ring0 MSRs into dom0 userspace.  This is not to
> >> say that having a generic MSR interface is a bad thing, but I don't
> >> think it should be used for this purpose.
> >
> >They are the two directions to implement this feature:
> >
> >Generic MSR access hypercall: It removes most of the policy in hypervisor
> > and put them in Dom0 userspace, which makes the implementation in
> > hypervisor very simple, with slightly higher cost (more hypercalls).
> >Sysctl hypercall: Hypervisor needs to consolidate all the CQM data which
> > burdens the implementation, with more memory allocation, data sharing
> > mechanism (2-level, page's address page, and page itself), also more
> > policies in hypervisor, etc. While its cost is slightly less.
> 
> >In my opinion, domctl is a compromise between two approaches, with
> > moderate policies in hypervisor, moderate size of memory allocation, with
> > moderate cost.
> 
> >I would prefer domctl or generic MSR access way, which makes the
> > implementation in hypervisor simple enough, but with only slightly higher cost.
> 
> Andrew and I talked a little more about this yesterday, and I think we agreed
> that until there is a proven need for the sysctl and/or the domctl approach, the
> generic MSR access route should be good enough. Suitably batched the
> number of hypercalls doesn't even need to be much higher than either of the
> other approaches.

Okay, I will wait several days to see whether other people have more comments about this MSR access hypercall. If no, I will start to implement it.

> 
> Question is whether this mechanism (which I'd like to be done so it can also
> later get added support for e.g. port I/O: see Linux'es dcdbas_smi_request()
> for where this might be useful) should become a sysctl op or - to be
> easily usable by the kernel too - a platform one.

For CQM, this MSR access hypercall may be somewhat specific, because it requires one MSR write and one MSR read, which cannot be split into two separate hypercalls to avoid preemption in the middle.

Thanks,
Dongxiao

> 
> Jan

  reply	other threads:[~2014-05-30  7:51 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-30 16:47 Xen Platform QoS design discussion Xu, Dongxiao
2014-04-30 17:02 ` Ian Campbell
2014-05-01  0:56   ` Xu, Dongxiao
2014-05-02  9:23     ` Jan Beulich
2014-05-02 12:30       ` Xu, Dongxiao
2014-05-02 12:40         ` Jan Beulich
2014-05-04  0:46           ` Xu, Dongxiao
2014-05-06  9:10             ` Ian Campbell
2014-05-06  1:40           ` Xu, Dongxiao
2014-05-06  7:55             ` Jan Beulich
2014-05-06 10:06             ` Andrew Cooper
2014-05-07  2:08               ` Xu, Dongxiao
2014-05-07  9:10                 ` Ian Campbell
2014-05-07 13:26               ` George Dunlap
2014-05-07 21:18                 ` Andrew Cooper
2014-05-08  5:21                   ` Xu, Dongxiao
2014-05-08 11:25                     ` Andrew Cooper
2014-05-09  2:41                       ` Xu, Dongxiao
2014-05-13  1:53                       ` Xu, Dongxiao
2014-05-16  5:11                       ` Xu, Dongxiao
2014-05-19 11:28                         ` George Dunlap
2014-05-19 11:45                           ` Jan Beulich
2014-05-19 12:13                             ` George Dunlap
2014-05-19 12:41                               ` Jan Beulich
2014-05-22  8:19                                 ` Xu, Dongxiao
2014-05-22  8:39                                   ` Jan Beulich
2014-05-22  9:27                                     ` George Dunlap
2014-05-26  0:51                                       ` Xu, Dongxiao
2014-05-29  0:45                                       ` Xu, Dongxiao
2014-05-29  7:01                                         ` Jan Beulich
2014-05-29  7:31                                           ` Xu, Dongxiao
2014-05-29  9:11                                             ` Jan Beulich
2014-05-30  9:10                                               ` Ian Campbell
2014-05-30 11:17                                                 ` Jan Beulich
2014-05-30 12:33                                                   ` Ian Campbell
2014-06-05  0:48                                                   ` Xu, Dongxiao
2014-06-05 10:43                                                     ` George Dunlap
2014-05-29  9:13                                             ` Andrew Cooper
2014-05-30  1:07                                               ` Xu, Dongxiao
2014-05-30  6:23                                                 ` Jan Beulich
2014-05-30  7:51                                                   ` Xu, Dongxiao [this message]
2014-05-30 11:15                                                     ` Jan Beulich
2014-05-02 12:50         ` Andrew Cooper
2014-05-04  2:34           ` Xu, Dongxiao
2014-05-06  9:12             ` Ian Campbell
2014-05-06 10:00             ` Andrew Cooper

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=40776A41FC278F40B59438AD47D147A911A2121E@SHSMSX104.ccr.corp.intel.com \
    --to=dongxiao.xu@intel.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=george.dunlap@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=jun.nakajima@intel.com \
    --cc=will.auld@intel.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.