Hello everyone,

I'd like to solicit comments on improvements to the RTDS scheduler for Xen
4.6.

The following regards changes to the RTDS scheduler, in line with our
expected next steps as mentioned on the feature wiki page:
http://wiki.xenproject.org/wiki/RTDS-Based-Scheduler#Features_that_are_planned_to_be_developed_after_Xen_4.5
.

[Goal]
The current RTDS scheduler is invoked every 1 millisecond. It does so
without knowing if a new scheduling decision will be made. The proposed
improvement is to redesign the scheduler to be event-driven, so that it is
only invoked at times after an event which may change the schedule has
occurred.

[Motivation]
This change will increase the efficiency of the scheduler by eliminating
invocations when no scheduling decision will be made. The scheduler is
currently ran every 1 millisecond. If no tasks have terminated or budgets
been depleted/replenished since the last scheduling, no changes will be
made. Due to this, the scheduler is currently called at times when no new
action will be taken, wasting processing resources. With the vital role
that the scheduler plays and the frequency at which it is invoked, this
design shift is a relatively important improvement.

[Design Sketch]
To move the scheduler from periodic to event-driven, we plan to add a timer
queue to hold times at which the scheduler should be invoked due to a job
release/termination or budget depletion/replenishment. The scheduler will
schedule jobs as it does currently; however, before finishing it will set
the timer interrupt for re-invoking the scheduler according to the earliest
time in the timer queue. Note that the scheduler will still run right away
for events that require immediate attention, such as when new VCPUs are
inserted, when interrupts for these events are received.

This improvement will only require changes to the RTDS scheduler file
(sched_rt.c) and will not require changes to any other Xen subsystems.

Discussion, comments, and suggestions are welcome.

Regards,
Dagaen Golomb
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to