[Click] SMPClick questions

Beyers Cronje bcronje at gmail.com
Wed Jul 21 17:23:49 EDT 2010


Hi Andreas,

You have full control on what thread Click schedules any element that
implements Task, i.e. FromDevice/ToDevice/PollDevice/Unqueue etc.

You have two options:

StaticThreadSched - Allows you to statically configure which thread the
element should run on.
http://read.cs.ucla.edu/click/elements/staticthreadsched
BalancedThreadSched  - Load balance on threads.
http://read.cs.ucla.edu/click/elements/balancedthreadsched

Your queue elements also need to be thread safe (Not sure if these are still
the most up to date, check the element directory):

MSQueue - Stores incoming packets in a multiple producer single consumer
first-in-first-out queue. http://read.cs.ucla.edu/click/elements/msqueue
ThreadSafeQueue - This variant of the default Queue is (should be)
completely thread safe, in that it supports multiple concurrent pushers and
pullers. http://read.cs.ucla.edu/click/elements/threadsafequeue

Hope this helps a bit. I dont know of any additional documentation on the
subject.

Beyers



On Wed, Jul 21, 2010 at 7:24 PM, Andreas Tsopelas <tsopelas at kth.se> wrote:

> Hi people!
>
> I am trying to understand how SMP Click works, but it seems I cannot find
> any documentation, apart from the one paper (Flexible Control of....).
> Is the --enable-multithread option the only thing we need to change for SMP
> Click to work? What control do we have on where the threads are created?
> What are the problems that make userlevel SMP Click experimental?
>
> If you can give me a link or specific place of source code where I should
> take a look, I would be grateful.
>
> Thank you in advance,
> Andreas
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>


More information about the click mailing list