[Bloat] some (very good) preliminary results from fiddling with byte queue limits on 100Mbit ethernet

Tom Herbert therbert at google.com
Sat Nov 19 16:53:47 EST 2011


Thanks for trying this out Dave!

> With byte queue limits at mtu*3 + the SFQ qdisc, latency under load
> can be hammered
>  down below 6ms when running at a 100Mbit line rate. No CBQ needed.
>
I'm hoping that we didn't have to set the BQL max_limit.  I would
guess that this might indicate some periodic spikes in interrupt
latency (BQL will increase limit aggressively in that case).  You
might want to try adjusting the hold_time to a lower value.  Also,
disabling TSO might lower the limit.

Without lowering the max_limit, what values so you see for limit and
inflight?  If you set min_limit to a really big number (effectively
turn of BQL), what does inflight grow to?

> Anyway, script could use improvement, and I'm busily patching BQL into
> the ag71xx driver as I write.
>
Cool, I look forward to those results!

> Sorry it's taken me so long to get to this since your bufferbloat
> talks at linux plumbers. APPLAUSE.
> It's looking like BQL + SFQ is an effective means of improving
> fairness and reducing latency on drivers
> that can support it. Even if they have large tx rings that the
> hardware demands.
>
Great.  I actually got back to looking at this a little last week.
AFAICT the overhead of BQL is < 1% CPU and throughput (still need more
testing to verify that).  There are some (very) minor performance
improvements that might be possible, but I don't have any major
modifications pending at this point.


More information about the Bloat mailing list