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?
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!