On Sun, Jan 21, 2018 at 12:52 PM, Tal Gilboa <ta...@mellanox.com> wrote:
> Hi Eric,
> We have noticed a degradation on both of our drivers (mlx4 and mlx5) when
> running TCP. Exact scenario is single stream TCP with 1KB packets. The
> degradation is a steady 50% drop.
> We tracked the offending commit to be:
> 75c119a ("tcp: implement rb-tree based retransmit queue")
>
> Since mlx4 and mlx5 code base is completely different and by looking at the
> changes in this commit, we believe the issue is external to the mlx4/5
> drivers.
>
> I see in the comment below you anticipated some overhead, but this may be a
> too common case to ignore.
>
> Can you please review and consider reverting/fixing it?
>

Hi Tal

You have to provide way more details than a simple mail, asking for a
" revert or a fix " ...

On our GFEs, we got a win, while I was expecting a small overhead,
given the apparent complexity of dealing with RB tree instead of
linear list.

And on the stress scenario described in my patch set, the win was
absolutely abysmal.

A " single strean TCP with 1KB packets"  is not something we need to optimize,
unless there is some really strange setup for one of your customers ?

Here we deal with millions of TCP flows, and this is what we need to
take care of.

Thanks.

> Thanks,
>
> Tal G.
>
>
> On 10/7/2017 2:31 AM, David Miller wrote:
>>
>> From: Eric Dumazet <eduma...@google.com>
>> Date: Thu,  5 Oct 2017 22:21:20 -0700
>>
>>> This patch series implement RB-tree based retransmit queue for TCP,
>>> to better match modern BDP.
>>
>>
>> Indeed, there was a lot of resistence to this due to the overhead
>> for small retransmit queue sizes, but with today's scale this is
>> long overdue.
>>
>> So, series applied, nice work!
>>
>> Maybe we can look into dynamic schemes where when the queue never
>> goes over N entries we elide the rbtree and use a list.  I'm not
>> so sure how practical that would be.
>>
>> Thanks!
>>
>

Reply via email to