[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4EA02F7A.8000705@gmail.com>
Date: Thu, 20 Oct 2011 16:26:02 +0200
From: Daniel Turull <daniel.turull@...il.com>
To: Eric Dumazet <eric.dumazet@...il.com>
CC: Ben Hutchings <bhutchings@...arflare.com>,
David Miller <davem@...emloft.net>, netdev@...r.kernel.org,
Robert Olsson <robert@...julf.net>,
Voravit Tanyingyong <voravit@....se>,
Jens Laas <jens.laas@...m.uu.se>
Subject: Re: [patch] pktgen: bug when calling ndelay in x86 architectures
On 10/20/2011 03:44 PM, Eric Dumazet wrote:
> Le jeudi 20 octobre 2011 à 15:22 +0200, Daniel Turull a écrit :
>> Hi,
>>
>> I tested the patch and it works well.
>>
>
> Thanks !
>
>
>>
>> I think if we increase the constant to 1ms, we will reduce the jitter if we have
>> a rate between 1kpps and 10 kpps, but I guess is not a big deal.
>>
>
>
>> I've plot this new graph with this patch:
>> http://tslab.ssvl.kth.se/pktgen/img/inter_eric1.eps
>
> Unfortunately, the sender cpu might be preempted by timer irq or other
> expensive irq, so the Min/Max values are not very different I guess.
>
> I dont understand your Min values.
>
> At 100 pps, how is it possible to have a Min value of ~5000 ns ?
>
>
My assumption is that for low rate, the min value is caused in the
beginning of the test. When we start the transmission in pktgen_run(),
we set the pkt_dev->next_tx to the current time but the are
more operation to do, so the first transmission is a bit delayed.
Even more if the cpu is preempted.
For the second packet, we are taking the pkt_dev->next_tx as a reference
and add the delay, in order to decide when to send.
So, my guess is that the first packet is delayed
and then we send the second packet only after a short time, in order
to keep the average rate in the transmission.
Daniel
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists