[Click] Multithreaded question

rajamhayek at yahoo.com rajamhayek at yahoo.com
Sat Feb 27 20:19:23 EST 2010


Hi Eddie,
I am not sure how the threading/stride scheduling work together.  I have included a sample image, extracted from a Master's thesis, that describe the single threaded execution.  In this picture, the active elements (A1, A2, and A3) are scheduled to run in sequence.  When they do run, they call synchronously the elements they are connected to until a queue (passive element) is reached.  This decomposes the execution into push/pull regions. Now we want to move this to multithreaded execution, what is the best way of adding elements to threads:
1- Only the active elements run on threads.2- The full regions are assigned to threads and the queues remain in the main thread.3- The full regions are assigned to threads and the queues are in the
 push region.4- The full regions are assigned to threads and the queues are in the pull regions.
So far with our application, assigning only active elements to threads, we are getting an unwanted bursty behavior of packet.  In single threaded, the bursty behavior disappears but we do not reach the required throughput.  I appreciate any pointers that can help us resolve this problem.
Thank you,Raja





      
-------------- next part --------------
A non-text attachment was scrubbed...
Name: click_scheduling.JPG
Type: image/jpeg
Size: 83382 bytes
Desc: not available
Url : http://amsterdam.lcs.mit.edu/pipermail/click/attachments/20100228/3b5a1e15/attachment.jpeg 


More information about the click mailing list