xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Meng Xu <mengxu@cis.upenn.edu>
To: Tianyang Chen <tiche@seas.upenn.edu>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Dario Faggioli <dario.faggioli@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Dagaen Golomb <dgolomb@seas.upenn.edu>
Subject: Re: [PATCH v11]xen: sched: convert RTDS from time to event driven model
Date: Fri, 18 Mar 2016 10:25:42 -0400	[thread overview]
Message-ID: <CAENZ-+kHNXNc8Gw1vSo=RBw+O-VwiCUi0PhVLi161_GkG6FiNA@mail.gmail.com> (raw)
In-Reply-To: <1458230814-4317-1-git-send-email-tiche@seas.upenn.edu>

On Thu, Mar 17, 2016 at 12:06 PM, Tianyang Chen <tiche@seas.upenn.edu> wrote:
> The current RTDS code has several problems:
>  - the scheduler, although the algorithm is event driven by
>    nature, follows a time driven model (is invoked periodically!),
>    making the code look unnatural;
>  - budget replenishment logic, budget enforcement logic and scheduling
>    decisions are mixed and entangled, making the code hard to understand;
>  - the various queues of vcpus are scanned various times, making the
>    code inefficient;
>
> This patch separates budget replenishment and enforcement. It does that
> by handling the former with a dedicated timer, and a queue of pending
> replenishment events.
>
> A replenishment queue has been added to keep track of all vcpus that
> are runnable.
>
> We also make sure that the main scheduling function is called when a
> scheduling decision is necessary, such as when the currently running
> vcpu runs out of budget.
>
> Finally, when waking up a vcpu, it is now enough to tickle the various
> CPUs appropriately, like all other schedulers also do.
>
> Signed-off-by: Tianyang Chen <tiche@seas.upenn.edu>
> Signed-off-by: Meng Xu <mengxu@cis.upenn.edu>
> Signed-off-by: Dagaen Golomb <dgolomb@seas.upenn.edu>

Great job, Tianyang! Thanks for your effort on this! :-D
Let's grab some drink during the weekend.

Reviewed-by: Meng Xu <mengxu@cis.upenn.edu>

Cheers,

Meng

-----------
Meng Xu
PhD Student in Computer and Information Science
University of Pennsylvania
http://www.cis.upenn.edu/~mengxu/

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

      parent reply	other threads:[~2016-03-18 14:25 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-17 16:06 [PATCH v11]xen: sched: convert RTDS from time to event driven model Tianyang Chen
2016-03-17 18:27 ` Dario Faggioli
2016-03-17 20:12   ` Chen, Tianyang
2016-03-18  1:45     ` Meng Xu
2016-03-18  4:09 ` Meng Xu
2016-03-18  7:45   ` Jan Beulich
2016-03-18  9:23     ` Dario Faggioli
2016-03-18 14:23       ` Meng Xu
2016-03-18 14:19     ` Meng Xu
2016-03-18  9:24   ` Dario Faggioli
2016-03-18 14:25 ` Meng Xu [this message]

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='CAENZ-+kHNXNc8Gw1vSo=RBw+O-VwiCUi0PhVLi161_GkG6FiNA@mail.gmail.com' \
    --to=mengxu@cis.upenn.edu \
    --cc=dario.faggioli@citrix.com \
    --cc=dgolomb@seas.upenn.edu \
    --cc=george.dunlap@citrix.com \
    --cc=tiche@seas.upenn.edu \
    --cc=xen-devel@lists.xenproject.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).