Sequential divergence

> On Aug 31, 2015, at 06:35, antoine [dot] rennuit [..] ... wrote:
>
> Hello Adolfo,
>
> Thanks for your reply.
>
> From what I understand crossing your answer and other readings, the component
> awakening mecanism on event is RT but there is a minor overhead associated to
> it (for the thread awakening I guess).
>
> Does this mean that when using strictly sequential activities FBSched should
> be used (in order to reduce scheduling latencies - as stated in the FBSched
> doc https://github.com/kmarkus/fbsched) and when more complex control
> architectures are expected (like the one in the above scheme) the event
> awakening mecanism can be used?
>
> Basically the component awakening on event has a small overhead but allows
> more complex architectures, is that right?

The overhead most likely isn't too different from waking the thread periodically or similar. Unless you already know that performance is going to be an issue, focusing on such details early on might be premature.

I'd say that identifying whether your system is primarily data driven (ie new days wakes up components - think individual pipelines of components) or synchronized between components (ie s higher level supervisor of executive activates components), will yield a better decision on which mechanism to use to activate components.

HTH
S

RE : Sequential divergence

You made things very explicit and clear. Thanks!

-------- Message d'origine --------
De : S Roderick <kiwi [dot] net [..] ...>
Date : 31/08/2015 16:52 (GMT+01:00)
À : Antoine Rennuit <antoine [dot] rennuit [..] ...>
Cc : orocos-users [..] ...
Objet : Re: [Orocos-users] Sequential divergence

> On Aug 31, 2015, at 06:35, antoine [dot] rennuit [..] ... wrote:
>
> Hello Adolfo,
>
> Thanks for your reply.
>
> From what I understand crossing your answer and other readings, the component
> awakening mecanism on event is RT but there is a minor overhead associated to
> it (for the thread awakening I guess).
>
> Does this mean that when using strictly sequential activities FBSched should
> be used (in order to reduce scheduling latencies - as stated in the FBSched
> doc https://github.com/kmarkus/fbsched) and when more complex control
> architectures are expected (like the one in the above scheme) the event
> awakening mecanism can be used?
>
> Basically the component awakening on event has a small overhead but allows
> more complex architectures, is that right?

The overhead most likely isn't too different from waking the thread periodically or similar. Unless you already know that performance is going to be an issue, focusing on such details early on might be premature.

I'd say that identifying whether your system is primarily data driven (ie new days wakes up components - think individual pipelines of components) or synchronized between components (ie s higher level supervisor of executive activates components), will yield a better decision on which mechanism to use to activate components.

HTH
S