Thread (25 messages) 25 messages, 5 authors, 2016-09-19

Re: [PATCH v3 net-next 16/16] tcp_bbr: add BBR congestion control

flat view

From: Eric Dumazet <hidden>
Date: 2016-09-19 23:33:55

It generates some slightly smaller code.
        if (bbr->lt_rtt_cnt < bbr_lt_intvl_min_rtts)
- 3e7:  0f b6 c0                movzbl %al,%eax
- 3ea:  83 f8 03                cmp    $0x3,%eax
- 3ed:  0f 86 d4 00 00 00       jbe    4c7 <bbr_lt_bw_sampling.isra.6+0x157>
+ 3e7:  3c 03                   cmp    $0x3,%al
+ 3e9:  0f 86 d1 00 00 00       jbe    4c0 <bbr_lt_bw_sampling.isra.6+0x150>

And different code for abs
                /* Is new bw close to the lt_bw from the previous interval? */
                diff = abs(bw - bbr->lt_bw);
- 47a:  44 89 e2                mov    %r12d,%edx
- 47d:  29 c2                   sub    %eax,%edx
- 47f:  89 d1                   mov    %edx,%ecx
- 481:  89 d3                   mov    %edx,%ebx
+ 475:  44 89 e3                mov    %r12d,%ebx
+ 478:  29 c3                   sub    %eax,%ebx
+ 47a:  89 da                   mov    %ebx,%edx
+ 47c:  c1 fa 1f                sar    $0x1f,%edx
+ 47f:  31 d3                   xor    %edx,%ebx
+ 481:  29 d3                   sub    %edx,%ebx

The biggest change is getting rid of the always true conditional.
...
Overall, it really makes little difference. Actual file sizes come out the same.
The idea is more to document what is variable
and what is immutable in the algorithm.
SGTM, thanks Stephen !
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help