lkml.org 
[lkml]   [2008]   [Aug]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [RFC 0/1][PATCH] POSIX SCHED_SPORADIC implementation for tasks and groups
From
Date
On Mon, 2008-08-11 at 16:25 +0200, Peter Zijlstra wrote:
> My suggestion would be to create struct sched_param2 with plenty of
> padding to support future expansion and add
> sys_sched_setscheduler2()/sys_sched_getscheduler2() to deal with this
> new structure.
And we will miss POSIX compliance. :-(
Anyway, I agree the ABI issue this could raise are serious enough and, I
repeat, I can't see any other solution too.

So, whatever someone is interested in the code or not, I think I'll
rewrite the interface part of the patch coping with something like the
solution you are proposing... Thank you.

> I think at least 3 struct timespec fields and a flags field might be
> needed for the most exotic deadline parameters:
>
> - budget
> - deadline
> - period
>
Let's hope they're enough... You know, real-time people are... Well...
Quite unpredictable!! :-P

> My own take is that SCHED_SPORADIC is a nice excersice in scheduler
> development
Can't disagree on that, especially because this is exactly one of the
first reasons why I started writing it! :-D

> but I'm not sure its actually in demand from application
> developers
Indeed, I also think that the task scheduling policy could be tricky and
quite difficult to be used for applications, especially in general
purpose environments, where the use of RT priorities is uncommon and,
often, an exceptional event.
If, conversely, you have an embedded system with very few tasks and you
run them with RT prios, I think this could be profitably used.

Anyway, even if we came to the agreement that SCHED_SPORADIC task
scheduling is not that useful, or, if you want, it is a complete mess,
what do you think about group scheduling and throttling?

I think, as I write, that it could be nice to have the possibility to
"throttle" task groups according to something similar to a Sporadic
Server.

I re-red my first mail and I can understand it could be quite difficult
to figure out what the main differences are just reading my (poorly
written!) English sentences... So I think I'll try to come out with an
example (as soon as I can).
Also, if you know any existing application that is making use of the
throttling/group scheduling infrastructure, please, point them out to
me, and I'll give them a try with SCHED_SPORADIC group scheduling, and
try to compare their behavior with the present one.

> (those of you who actually write RT progs, please holler if
> you care - I'm interested to hear your stories).
Well, we will for sure (at least try to) use it for implementing a soft
and hard real-time library from a research project.
Maybe we will modify it a little bit more, but it will be the basis.

Furthermore, I remember that, when we met in Prague, T. Backer from FSU
seemed quite interested in SCHED_SPORADIC... Maybe we can ask him to
help us too... What do you think?

> SCHED_EDF is in great demand - and is being worked on - albeit not as
> much as I'd like to, due to me being too busy with other stuff atm :-/
Hey, we sent you our code, even if it is very, very preliminary state...
And you have not make us know what you do think about it! :-O
Anyway, we also are continuing working on it, even if being busy with a
lot of other things too, and we would be glad collaborate, it there is
room for. :-D

But this is another thread, and I don't want to mix things! :-)

Thanks for replying,
Dario

--
<<This happens because I choose it to happen!>>
(Raistlin Majere, DragonLance Chronicles -Dragons of Spring Drawning-)
----------------------------------------------------------------------
Dario Faggioli
GNU/Linux Registered User: #340657
Web: http://www.linux.it/~raistlin
Blog: http://blog.linux.it/raistlin
SIP Account: dario.faggioli@sipproxy.wengo.fr or
raistlin@ekiga.net
Jabber Account: dario.faggioli@jabber.org/WengoPhone
GnuPG Key ID: 4DC83AC4
GnuPG Key Fingerprint: 2A78 AD5D B9CF A082 0836 08AD 9385 DA04 4DC8 3AC4
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2008-08-11 18:27    [W:0.088 / U:0.560 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site