[Click] CPU scheduling -> make elements interruptable.
Eddie Kohler
kohler at cs.ucla.edu
Wed Aug 29 14:02:12 EDT 2007
> I don't think this would be easy
> to do, as I don't think the executing threads (RouterThread) are
> designed to be interrupted.
Exactly right, thanks Roman.
E
>
> Hopefully Eddie will shine more light on this.
>
> Roman
>
> Egi, Norbert wrote:
>> Hi,
>>
>> We are using Click for desinging a shared forwarding engine with separate forwarding paths (chain of elements) per customer. The customers share all the NICs, so after the packets are polled out from the NIC's queue a Classifier demultiplexes them by emitting them to the proper forwarding path. Our intention is to provide a fair CPU scheduling for each of the forwarding paths. The stride scheduling algorithm, implemented in Click, would be a perfect solution for our problem, but after checking the source code and the available documents I found out that the algorithm hasn't been implemented completely as it was proposed. If I understand it correctly from the source and its comments, there is no such thing like "quantums" (i.e. a discrete time slice when the scheduled task is entitled to use the CPU) and I guess that's the main reason while the operation of the elements can not be interrupted.
>>
>> In the first comment of lib/task.cc it's mentioned that this may be addressed in the future, so I was wondering whether anyone is working on it and I may jump in and help or just could someone provide information on how to make elements interruptable the fastest way extending the current version of the code.
>>
>> Regards,
>> Norbert
>>
>> _______________________________________________
>> click mailing list
>> click at amsterdam.lcs.mit.edu
>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>
>
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
More information about the click
mailing list