Dynamic Ticks/HZ

Joe Holden lists at rewt.org.uk
Mon Nov 5 18:21:30 UTC 2012

Luigi Rizzo wrote:
> On Mon, Nov 05, 2012 at 04:25:36PM +0000, Joe Holden wrote:
>> Luigi Rizzo wrote:
>>> On Mon, Nov 05, 2012 at 08:11:41AM -0500, Ryan Stone wrote:
>>>> On Mon, Nov 5, 2012 at 4:40 AM, Joe Holden <lists at rewt.org.uk> wrote:
>>>>> doh, running kernel wasn't as GENERIC as I thought it was, looks like
>>>>> device polling not only breaks dynamic ticks but also reduces rx ability
>>>>> significantly, exactly 150,000 pps per 1000hz on igb versus 650,000 
>>>>> without
>>>>> Is this a known issue? (and if device polling isn't as useful as it once
>>>>> was, should it be removed?)
>>>> Device polling on modern multiqueue NICs isn't very useful because you're
>>>> limited to a single thread for handling packets.  I have a patch that 
>>>> fixes
>>>> this that I've let fall by the wayside.
>>> the 150,000 is result of the combination of the default value of
>>> sysctl  kern.polling.burst_max and kern.polling.idle_poll=0
>>> (i think this is the default value for the latter).
>>> The 150 was sized for the peak pps on a 100Mbit/s interface,
>>> back in 2001. You should at least be able to raise the number
>>> and see what kind of throughput you can achieve.
>>> This said, modern nics also have interrupt moderation so you
>>> don't really need polling.
>>> cheers
>>> luigi
>> Hi Luigi,
>> This makes sense, am I likely to achieve better throughput (in the 
>> forwarding path at this point) with netisr rather than polling, 
>> especially as mentioned above the igb does indeed have multiple queues 
>> for rx?
> at 1Gbit/s you probably don't need multiqueue (I am actually surpised
> you can only do 650kpps, but perhaps because you are using ipfw and
> not just doing plain forwarding ?)
>> On another note, is netmap usable in the forwarding context at all as it 
>> is rather awesome
> It depends on what you need to do. If you have a v4/v6 router you
> won't see any advantage (at the moment; there is some work in the
> pipeline but probably it won't be available before spring).
> If you just need to implement a firewall to protect the internal
> network then it is another story and you can use the ipfw on netmap
> that I posted in august.
> cheers
> luigi

I have a setup where box1 is connected directly to box2 (igb0), with 
pkt-gen however box2 doesn't seem to actually forward any packets, 
sysctl -ip 1 shows 1.48Mpps unreachables generated (matching the input), 
  is there something specific I need to do to test forwarding?


More information about the freebsd-current mailing list