Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Jun 2014 20:34:09 -0300
From:      Fred Pedrisa <fredhps10@hotmail.com>
To:        "'Luigi Rizzo'" <rizzo@iet.unipi.it>
Cc:        'freebsd-current' <freebsd-current@freebsd.org>
Subject:   RES: Select() vs Netmap
Message-ID:  <COL131-DS2438AD2749F708D9EED6DB0200@phx.gbl>
In-Reply-To: <!&!AAAAAAAAAAAuAAAAAAAAAD0Npi%2Bx74NOlwmRBONHU/QBANlTnCJhprtFudq2LHCBs8EBACQA//8AABAAAADK15J5uMb8Tq6fgDDFSPnoAQAAAAA=@hotmail.com>
References:  <COL131-DS2072674707FBA20CABAA6B0210@phx.gbl> <042901cf7dc0$f1cdc160$d5694420$@iet.unipi.it> <!&!AAAAAAAAAAAuAAAAAAAAAD0Npi%2Bx74NOlwmRBONHU/QBANlTnCJhprtFudq2LHCBs8EBACQA//8AABAAAADK15J5uMb8Tq6fgDDFSPnoAQAAAAA=@hotmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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@freebsd.org
[mailto:owner-freebsd-current@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@hotmail.com
<javascript:_e(%7B%7D,'cvml','fredhps10@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@freebsd.org mailing list 
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
>


-- 
-----------------------------------------+------------------------------
-----------------------------------------+-
 Prof. Luigi RIZZO, rizzo@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@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?COL131-DS2438AD2749F708D9EED6DB0200>