Hello, The code is built in the top of kipfw code, even if you remove the call to the 'ipfw packet parser' and leave only the loop there to forward the packets from one port to another, the problem also happens :) Sincerely, Fred Pedrisa -----Mensagem original----- De: Fred Pedrisa [mailto:fredhps10_at_hotmail.com] Enviada em: domingo, 1 de junho de 2014 15:16 Para: 'Luigi Rizzo' Cc: 'freebsd-current' Assunto: RES: Select() vs Netmap Hello, This is 1.4 Mpps (1.400.000 pps). There is a mix of src addresses, but one single dst address. Is there a way to disable rss maybe to check what happens ? -----Mensagem original----- De: owner-freebsd-current_at_freebsd.org [mailto:owner-freebsd-current_at_freebsd.org] Em nome de Luigi Rizzo Enviada em: domingo, 1 de junho de 2014 14:41 Para: Fred Pedrisa Cc: freebsd-current Assunto: Select() vs Netmap On Sunday, June 1, 2014, Fred Pedrisa <fredhps10_at_hotmail.com <javascript:_e(%7B%7D,'cvml','fredhps10_at_hotmail.com');>> wrote: > Hey, guys. > > > > > > I'm currently experiencing a strange issue in my program (Using netmap). > > > > Sometimes, when I call select() in a FD, it gets like 4~8 packets per > event, however suddenly it drops to 1~2 packets per event, losing a > lot of performance and increasing the number of select calls necessary > to poll the NIC for new packets. > > > > Is there any type of tweak I can do, to make this behavior becomes > linear and sustain the performance in such case without these oscillations ? > > > > The behavior happens under the same stressing circumstances, around > 1.4 Mpps~ (64 byte packets). Is that one-point-four or fourteen? The firmer should be sustainable even with short batches. In any case apart from tweaking the interrupt moderation parameters in the device drivers, I'd check carefully the logic in your program and try to record a log of your activity. Average values rarely tell the full story of what is happening. see why you are srving small batches. One more thing, I think you use multuqueue, but no idea what kind of input traffic - whether it is all for the same destination or you have a mix of DST addresses. In the latter case, one thing to check is whether, on a restart of the program, the driver changes the hash key in the RSS filter. This might cause an imbalance in the traffic delivered to the queues. Cheers Luigi > > > > > Sincerely, > > > > Fred > > _______________________________________________ > freebsd-current_at_freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org" > -- -----------------------------------------+------------------------------ -----------------------------------------+- Prof. Luigi RIZZO, rizzo_at_iet.unipi.it . Dip. di Ing. dell'Informazione http://www.iet.unipi.it/~luigi/ . Universita` di Pisa TEL +39-050-2211611 . via Diotisalvi 2 Mobile +39-338-6809875 . 56122 PISA (Italy) -----------------------------------------+------------------------------ -----------------------------------------+- _______________________________________________ freebsd-current_at_freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"Received on Mon Jun 02 2014 - 21:34:09 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:49 UTC