Our presto paper describes some of the issues you might see with multi core systems.
http://conferences.sigcomm.org/co-next/2010/Workshops/PRESTO/PRESTO_papers/03-Egi.pdf Adam On 4 February 2011 04:15, Joonwoo Park <[email protected]> wrote: > Roman, > > It's true. But since Ashok said that your config which doesn't have > MQToDevice() doesn't work either. > So I'm under the impression that his click version is doing something wrong. > > p.s. I guess MQToDevice is from RouteBricks project > (http://routebricks.org/code.html) > > Joonwoo > > On Thu, Feb 3, 2011 at 8:10 PM, Roman Chertov <[email protected]> wrote: >> Joonwoo, >> >> It is also unclear how the MQToDevice works, and if it does schedule a pull >> on every run_task. >> >> Roman >> >> On 02/03/2011 07:47 PM, Joonwoo Park wrote: >>> >>> Hi Ashok, >>> >>> Hmm.. It sounds to me the version you're using is doing something >>> differently. Only different between yours and Roman's is click >>> version. Isn't it? >>> >>> By a chance, do you never see two threads are hogging? >>> We had issues on linuxmodule multithreading before, the symptom was >>> after starting multiple threads if they race very competitively, most >>> of them never be scheduled again in few seconds. >>> However, it seems to me 1.7.0rc1 has fixes for that issue (i.e. >>> 7312a95decddc7c4f5043d29d622dc9efb99a547) >>> >>> Can you also check if all threads are actually being scheduled? >>> >>> Regards, >>> Joonwoo >>> >>> On Thu, Feb 3, 2011 at 6:20 PM, Ashok Anand<[email protected]> wrote: >>>> >>>> No, we did not see two threads hogging with Roman's config also. So it >>>> might >>>> be some compilation configuration issue. >>>> >>>> We have some code dependency to the old version, so we were trying to >>>> work >>>> with this version only. >>>> >>>> On Thu, Feb 3, 2011 at 6:34 PM, Joonwoo Park<[email protected]> >>>> wrote: >>>>> >>>>> Do you see hogging two threads with Roman's config (without MQToDevice)? >>>>> >>>>> p.s If you don't have special reason to stick with old version, I'd >>>>> like to suggest latest version from git tree. >>>>> >>>>> Joonwoo >>>>> >>>>> On Thu, Feb 3, 2011 at 4:18 PM, Ashok Anand<[email protected]> >>>>> wrote: >>>>>> >>>>>> We are using the following version >>>>>> >>>>>> wget http://read.cs.ucla.edu/click/click-1.7.0rc1.tar.gz >>>>>> with patch >>>>>> patch -p1 -b< /usr/src/click/etc/linux-2.6.24.7-patch >>>>>> >>>>>> and running it in kernel mode >>>>>> >>>>>> We used, ./configure --enable-linuxmodule --enable-warp9 >>>>>> --enable-multithread=8 --disable-userlevel >>>>>> and command line for running click was >>>>>> click-install -t 8 gen2.conf >>>>>> >>>>>> >>>>>> On Tue, Feb 1, 2011 at 7:21 PM, Roman Chertov<[email protected]> >>>>>> wrote: >>>>>> >>>>>>> On Tue, 1 Feb 2011 19:14:15 -0600 Ashok Anand<[email protected]> >>>>>>> wrote >>>>>>> >>>>>>>> yeah, it uses multiple tx queues for a single device. >>>>>>>> >>>>>>>> Strangely, we did not see two kclick hogging up with the following >>>>>>>> click >>>>>>>> conf as well.. >>>>>>>> >>>>>>>> What was the click compilation options you used, apart from what we >>>>>>>> had.. >>>>>>> >>>>>>> $ ./configure --enable-ip6 --enable-analysis --enable-user-multithread >>>>>>> --enable-task-heap --enable-experimental --enable-multithread=4 >>>>>>> --enable-fixincludes >>>>>>> >>>>>>> I pulled the source last week. >>>>>>> >>>>>>> Roman >>>>>>> >>>>>>>> >>>>>>>> ./configure --enable-linuxmodule --enable-warp9 >>>>>>>>>>> >>>>>>>>>>> --enable-multithread=8 --disable-userlevel >>>>>>>>>>> and command line for running click was >>>>>>>> >>>>>>>> On Tue, Feb 1, 2011 at 6:50 PM, Roman Chertov<[email protected]> >>>>>>> >>>>>>> wrote: >>>>>>>> >>>>>>>>> I am not sure what your MQToDevice element does (i assume it uses >>>>>>> >>>>>>> multiple >>>>>>>>> >>>>>>>>> tx >>>>>>>>> queues for a single device). >>>>>>>>> >>>>>>>>> However, with the script below >>>>>>>>> pd0 :: InfiniteSource(DATA \<00 00 c0 ae 67 ef 00 00 00 00 00 00 >>>>>>>>> 08 >>>>>>> >>>>>>> 00 >>>>>>>>> >>>>>>>>> 45 00 00 28 00 00 00 00 40 11 77 c3 01 00 00 01 >>>>>>>>> 02 00 00 02 13 69 13 69 00 14 d6 41 55 44 50 20 >>>>>>>>> 70 61 63 6b 65 74 21 0a 04 00 00 00 01 00 00 00 >>>>>>>>> 01 00 00 00 00 00 00 00 00 80 04 08 00 80 04 08 >>>>>>>>> 53 53 00 00 53 53 00 00 05 00 00 00 00 10 00 00 >>>>>>>>> 01 00 00 00 54 53 00 00 54 e3 04 08 54 e3 04 08 >>>>>>>>> d8 01 00 00>, LIMIT -1, STOP true) >>>>>>>>> -> q1 :: CPUQueue(1000) >>>>>>>>> -> uq0 :: Unqueue2 >>>>>>>>> -> Discard; >>>>>>>>> >>>>>>>>> StaticThreadSched(pd0 0, uq0 0); >>>>>>>>> >>>>>>>>> pd1 :: RandomSource(1400) >>>>>>>>> -> q2 :: CPUQueue(1000) >>>>>>>>> -> uq1 :: Unqueue2 >>>>>>>>> -> Discard; >>>>>>>>> >>>>>>>>> When I run top, I can see to kclick hogging up two CPUs. >>>>>>>>> >>>>>>>>> Roman >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, 1 Feb 2011 18:38:19 -0600 "Nilay"<[email protected]> wrote >>>>>>>>> >>>>>>>>>> gen2.conf looks like >>>>>>>>>> >>>>>>>>>> pd0 :: InfiniteSource(DATA \<00 00 c0 ae 67 ef 00 00 00 00 00 00 >>>>>>>>>> 08 >>>>>>> >>>>>>> 00 >>>>>>>>>> >>>>>>>>>> 45 00 00 28 00 00 00 00 40 11 77 c3 01 00 00 01 >>>>>>>>>> 02 00 00 02 13 69 13 69 00 14 d6 41 55 44 50 20 >>>>>>>>>> 70 61 63 6b 65 74 21 0a 04 00 00 00 01 00 00 00 >>>>>>>>>> 01 00 00 00 00 00 00 00 00 80 04 08 00 80 04 08 >>>>>>>>>> 53 53 00 00 53 53 00 00 05 00 00 00 00 10 00 00 >>>>>>>>>> 01 00 00 00 54 53 00 00 54 e3 04 08 54 e3 04 08 >>>>>>>>>> d8 01 00 00>, LIMIT -1, STOP true) -> >>>>>>>>>> q1 :: CPUQueue(1000) -> >>>>>>>>>> td0 :: MQToDevice(eth1, QUEUE 0, BURST 32); >>>>>>>>>> StaticThreadSched(pd0 0, td0 0); >>>>>>>>>> >>>>>>>>>> pd1 :: RandomSource(1400) -> >>>>>>>>>> q2 :: CPUQueue(1000) -> >>>>>>>>>> td1 :: MQToDevice(eth1, QUEUE 1, BURST 32); >>>>>>>>>> StaticThreadSched(pd1 1, td1 1); >>>>>>>>>> >>>>>>>>>> ~ >>>>>>>>>> >>>>>>>>>> On Tue, February 1, 2011 6:34 pm, Roman Chertov wrote: >>>>>>>>>>> >>>>>>>>>>> On Tue, 1 Feb 2011 18:26:12 -0600 Ashok Anand< >>>>>>> >>>>>>> [email protected]> >>>>>>>>>>> >>>>>>>>>>> wrote >>>>>>>>>>> >>>>>>>>>>>> We used, ./configure --enable-linuxmodule --enable-warp9 >>>>>>>>>>>> --enable-multithread=8 --disable-userlevel >>>>>>>>>>>> and command line for running click was >>>>>>>>>>>> click-install -t 8 gen2.conf >>>>>>>>>>> >>>>>>>>>>> And how does gen2.conf look like? >>>>>>>>>>> >>>>>>>>>>> Roman >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Thu, Jan 20, 2011 at 7:54 PM, Cliff Frey<[email protected]> >>>>>>> >>>>>>> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> what configuration params did you build click with, and what >>>>>>> >>>>>>> command >>>>>>>>>>>> >>>>>>>>>>>> line >>>>>>>>>>>>> >>>>>>>>>>>>> are you running click with? (both involve flags to enable >>>>>>>>>>>> >>>>>>>>>>>> multithreading) >>>>>>>>>>>>> >>>>>>>>>>>>> Cliff >>>>>>>>>>>>> >>>>>>>>>>>>> On Thu, Jan 20, 2011 at 5:34 PM, Nilay Vaish >>>>>>>>>>>>> <[email protected] >>>>>>>> >>>>>>>>>>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> I am trying to generate traffic using Click in its >>>>>>> >>>>>>> multi-threaded >>>>>>>>>>>> >>>>>>>>>>>> mode. >>>>>>>>>>>>> >>>>>>>>>>>>> The >>>>>>>>>>>>>> >>>>>>>>>>>>>> configuration file looks like following : >>>>>>>>>>>>>> >>>>>>>>>>>>>> pd0 :: InfiniteSource(DATA \<00 00 c0 ae 67 ef 00 00 00 >>>>>>>>>>>>>> 00 00 >>>>>>> >>>>>>> 00 >>>>>>>>>>>> >>>>>>>>>>>> 08 00 >>>>>>>>>>>>>> >>>>>>>>>>>>>> 45 00 00 28 00 00 00 00 40 11 77 c3 01 00 00 01 >>>>>>>>>>>>>> 02 00 00 02 13 69 13 69 00 14 d6 41 55 44 50 20 >>>>>>>>>>>>>> 70 61 63 6b 65 74 21 0a 04 00 00 00 01 00 00 00 >>>>>>>>>>>>>> 01 00 00 00 00 00 00 00 00 80 04 08 00 80 04 08 >>>>>>>>>>>>>> 53 53 00 00 53 53 00 00 05 00 00 00 00 10 00 00 >>>>>>>>>>>>>> 01 00 00 00 54 53 00 00 54 e3 04 08 54 e3 04 08 >>>>>>>>>>>>>> d8 01 00 00>, LIMIT 600000, STOP true) -> >>>>>>>>>>>>>> td0 :: MQToDevice(eth1, QUEUE 0, BURST 32); >>>>>>>>>>>>>> StaticThreadSched(pd0 0, td0 0); >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> It actually eight such descriptions. The router starts >>>>>>>>>>>>>> with >>>>>>> >>>>>>> this >>>>>>>>>>>>>> >>>>>>>>>>>>>> configuraion, >>>>>>>>>>>>>> but I see only when active thread when I use the 'top' >>>>>>> >>>>>>> utility. >>>>>>>>> >>>>>>>>> Any >>>>>>>>>>>> >>>>>>>>>>>> idea >>>>>>>>>>>>> >>>>>>>>>>>>> as >>>>>>>>>>>>>> >>>>>>>>>>>>>> to >>>>>>>>>>>>>> what could be the reason for this? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks >>>>>>>>>>>>>> Nilay >>>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>>> click mailing list >>>>>>>>>>>>>> [email protected] >>>>>>>>>>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click >>>>>>>>>>>>>> >>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>> click mailing list >>>>>>>>>>>>> [email protected] >>>>>>>>>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click >>>>>>>>>>>>> >>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>> click mailing list >>>>>>>>>>>> [email protected] >>>>>>>>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> click mailing list >>>>>>>>>>> [email protected] >>>>>>>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Nilay >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> click mailing list >>>>>> [email protected] >>>>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click >>>>>> >>>> >>>> >>> >> >> > > _______________________________________________ > click mailing list > [email protected] > https://amsterdam.lcs.mit.edu/mailman/listinfo/click > _______________________________________________ click mailing list [email protected] https://amsterdam.lcs.mit.edu/mailman/listinfo/click
