public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/12][PATCH] SCHED_DEADLINE (new version of SCHED_EDF)
@ 2009-10-16 15:35 Raistlin
  2009-10-16 15:38 ` [RFC 1/12][PATCH] Extended scheduling parameters structure added Raistlin
                   ` (11 more replies)
  0 siblings, 12 replies; 45+ messages in thread
From: Raistlin @ 2009-10-16 15:35 UTC (permalink / raw)
  To: Peter Zijlstra
  Cc: raistlin, linux-kernel, michael trimarchi, Fabio Checconi,
	Ingo Molnar, Thomas Gleixner, Dhaval Giani, Johan Eker, p.faure,
	Chris Friesen, Steven Rostedt, Henrik Austad, Frederic Weisbecker,
	Darren Hart, Sven-Thorsten Dietrich, Bjoern Brandenburg,
	Tommaso Cucinotta, giuseppe.lipari, Juri Lelli

[-- Attachment #1: Type: text/plain, Size: 2634 bytes --]

Hi Peter, Hi all,

Given all the comments and feedback we got, here it is the new version
of our EDF patch, this time in a split series. :-)

Special thanks to all the one that gave us any kind of suggestion,
especially during last RTLWS in Dresden.

The rationale/motivation for the new scheduler is the same of the first
e-mail (http://lwn.net/Articles/353797/), thus I only add some new and
(I think) interesting links:
 - Ericsson posting about SCHED_EDF/DEADLINE
    https://labs.ericsson.com/blog/making-linux-more-real-time

 - The slides we presented at RTLWS in Dresden:
    http://retis.sssup.it/people/faggioli/sched_deadline/rtlw_EDF.pdf

 - Luca Abeni's presentation about using deadline based reservation 
   schedulers for IRQ-Threads:
    http://www.disi.unitn.it/~abeni/rtlws-slides.pdf

Moreover, we moved the project on gitorious.org, therefore:
 http://gitorious.org/sched_deadline

I am also setting up right now the Wiki section, where you can find some
more detailed usage instructions, examples and overhead estimation:
 http://gitorious.org/sched_deadline/pages/Home

Git repositories are up and running, and ready at:
(mainline)
 git://gitorious.org/sched_deadline/linux-deadline.git sched-deadline 

(sched-devel)
 git://gitorious.org/sched_deadline/linux-deadline.git sched-devel-deadline

(preempt-rt [*])
 git://gitorious.org/sched_deadline/linux-deadline.git rt-deadline

The new project homepage is
 http://www.evidence.eu.com/sched_deadline.html

Here the main changes we did, following what many of you --and mainly
Peter-- suggested:
- name changed from SCHED_EDF to SCHED_DEADLINE

- SCHED_DEADLINE has higher priority than SCHED_FIFO/SCHED_RR

- flags added in sched_param_ex to signal deadline misses
  (in case of utilization > 100%) and/or budget overruns

- new sched_*_ex prototypes, with a len field to accomodate the size of
  sched_param_ex, trying to avoid further ABI issues if it changes

- new syscall sched_wait_interval added. It behaves like clock_nanosleep
  but, for a SCHED_DEADLINE task, it also represent the end of the
  current instance (sched_yield no longer needed)

- on fork, child starts but with 0 bandwidth (i.e., it does not start! :-D)

- bug fixing :)

Any feedback and contribution is welcome.

Many thanks,

             Dario Faggioli
             Claudio Scordino
             Michael Trimarchi

[*] porting toward preempt-rt is work in progress. Code is there, but we
are testing and fixing it, with the help of Luca and Nicola from
Trento... So don't consider it as the final version!


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 45+ messages in thread

end of thread, other threads:[~2010-01-13 21:20 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-16 15:35 [RFC 0/12][PATCH] SCHED_DEADLINE (new version of SCHED_EDF) Raistlin
2009-10-16 15:38 ` [RFC 1/12][PATCH] Extended scheduling parameters structure added Raistlin
2009-12-29 12:15   ` Peter Zijlstra
2010-01-13 10:36     ` Raistlin
2009-10-16 15:40 ` [RFC 0/12][PATCH] SCHED_DEADLINE: core of the scheduling class Raistlin
2009-12-29 12:25   ` Peter Zijlstra
2010-01-13 10:40     ` Dario Faggioli
2009-12-29 12:27   ` Peter Zijlstra
2010-01-13 10:42     ` Raistlin
2009-12-29 14:30   ` Peter Zijlstra
2009-12-29 14:37     ` Peter Zijlstra
2009-12-29 14:40       ` Peter Zijlstra
2010-01-13 16:32     ` Dario Faggioli
2010-01-13 16:47       ` Peter Zijlstra
2009-12-29 14:41   ` Peter Zijlstra
2010-01-13 10:46     ` Raistlin
2009-10-16 15:41 ` [RFC 0/12][PATCH] SCHED_DEADLINE: fork and terminate task logic Raistlin
2009-12-29 15:20   ` Peter Zijlstra
2010-01-13 11:11     ` Raistlin
2010-01-13 16:15       ` Peter Zijlstra
2010-01-13 16:28         ` Dario Faggioli
2010-01-13 21:30         ` Fabio Checconi
2009-10-16 15:41 ` [RFC 0/12][PATCH] SCHED_DEADLINE: added sched_*_ex syscalls Raistlin
2009-10-16 15:42 ` [RFC 0/12][PATCH] SCHED_DEADLINE: added sched-debug support Raistlin
2009-10-16 15:43 ` [RFC 6/12][PATCH] SCHED_DEADLINE: added scheduling latency tracer Raistlin
2009-10-16 15:44 ` [RFC 7/12][PATCH] SCHED_DEADLINE: signal delivery when overrunning Raistlin
2009-12-28 14:19   ` Peter Zijlstra
2010-01-13  9:30     ` Raistlin
2009-10-16 15:44 ` [RFC 8/12][PATCH] SCHED_DEADLINE: wait next instance syscall added Raistlin
2009-12-28 14:30   ` Peter Zijlstra
2010-01-13  9:33     ` Raistlin
2009-10-16 15:45 ` [RFC 9/12][PATCH] SCHED_DEADLINE: system wide bandwidth management Raistlin
2009-11-06 11:34   ` Dhaval Giani
2009-12-28 14:44   ` Peter Zijlstra
2010-01-13  9:41     ` Raistlin
2009-10-16 15:46 ` [RFC 10/12][PATCH] SCHED_DEADLINE: group bandwidth management code Raistlin
2009-12-28 14:51   ` Peter Zijlstra
2010-01-13  9:46     ` Raistlin
2009-10-16 15:47 ` [RFC 11/12][PATCH] SCHED_DEADLINE: documentation Raistlin
2009-10-16 15:48 ` [RFC 12/12][PATCH] SCHED_DEADLINE: modified sched_*_ex API Raistlin
2009-12-28 15:09   ` Peter Zijlstra
2010-01-13 10:27     ` Raistlin
2010-01-13 16:23       ` Peter Zijlstra
2009-12-29 12:15   ` Peter Zijlstra
2010-01-13 10:33     ` Raistlin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox