Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Oct 2024 10:42:49 -0400
From:      Cheng Cui <cc@freebsd.org>
To:        void <void@f-m.fm>
Cc:        "freebsd-net@FreeBSD.org" <freebsd-net@freebsd.org>
Subject:   Re: Performance test for CUBIC in stable/14
Message-ID:  <CAGaXuiKD-b4PGrqfxy9zk-BRxU==HMc9KshqyJGzH8saeOLf1A@mail.gmail.com>
In-Reply-To: <ZxJe8e8sRU9NCHv4@vm2>
References:  <20240912181618.7895d10ad5ff2ebae9883192@gmail.com> <Zw3YGPIBC_s-q-Vg@vm2> <Zw3dlDuaSXsIG-yX@vm2> <CAGaXuiLG4Qv2KgDtJveN3adLh6b8tEzC4j6OYfLo1_dj8BKZWQ@mail.gmail.com> <Zw_6SNSEW5mXMy_I@vm2> <CAGaXuiL_Fk=_FtU23RoJBP0WguU8_-y3Tb1iZ=T2unVv-2aRpA@mail.gmail.com> <ZxDdnSngi13UyZSL@vm2> <CAGaXuiK52ufOs-eVfKHAYpGxRyGfCMpbbZy4GcShybTzHcjDGg@mail.gmail.com> <ZxEqfISBJIW75p_P@vm2> <CAGaXuiJW5QW1eFqjXtSO%2BojOX5G12B56%2BnzE9zaVR7nB33VjWA@mail.gmail.com> <ZxJe8e8sRU9NCHv4@vm2>

next in thread | previous in thread | raw e-mail | index | archive | help
--000000000000db2dbc0624fdac81
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Change the subject to `Performance test for CUBIC in stable/14`, was `Re:
Performance issues with vnet jails + epair + bridge`.

I actually prepared two patches, one depends on the other:

https://reviews.freebsd.org/D47218     << apply this patch firstly
https://reviews.freebsd.org/D47213     << apply this patch secondly

Please let me know if you have any questions.

It passed my local test on a 1% drop rate link, with nearly 3.9X
performance improvement.

before patching:
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.07   sec  27.0 MBytes   211 Mbits/sec  207   12.8 KBytes

[  5]   1.07-2.12   sec  18.0 MBytes   144 Mbits/sec  151   11.4 KBytes

[  5]   2.12-3.07   sec  22.0 MBytes   194 Mbits/sec  189   11.8 KBytes

[  5]   3.07-4.07   sec  23.0 MBytes   194 Mbits/sec  203   10.8 KBytes

[  5]   4.07-5.06   sec  18.0 MBytes   153 Mbits/sec  165   15.0 KBytes

[  5]   5.06-6.11   sec  25.0 MBytes   200 Mbits/sec  227   26.9 KBytes

[  5]   6.11-7.07   sec  23.0 MBytes   201 Mbits/sec  189   10.7 KBytes

[  5]   7.07-8.07   sec  23.0 MBytes   193 Mbits/sec  215   12.7 KBytes

[  5]   8.07-9.03   sec  22.0 MBytes   191 Mbits/sec  185   10.4 KBytes

[  5]   9.03-10.09  sec  24.0 MBytes   191 Mbits/sec  219   1.41 KBytes

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.09  sec   225 MBytes   187 Mbits/sec  1950
sender
[  5]   0.00-10.14  sec   225 MBytes   186 Mbits/sec
 receiver

iperf Done.

after patching:
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.08   sec   118 MBytes   919 Mbits/sec  872   47.5 KBytes

[  5]   1.08-2.07   sec   109 MBytes   917 Mbits/sec  849   56.9 KBytes

[  5]   2.07-3.09   sec   111 MBytes   915 Mbits/sec  810   54.5 KBytes

[  5]   3.09-4.07   sec   108 MBytes   922 Mbits/sec  831   43.8 KBytes

[  5]   4.07-5.07   sec   109 MBytes   919 Mbits/sec  813   31.1 KBytes

[  5]   5.07-6.02   sec   103 MBytes   913 Mbits/sec  815   60.2 KBytes

[  5]   6.02-7.07   sec   116 MBytes   921 Mbits/sec  850   58.2 KBytes

[  5]   7.07-8.06   sec   109 MBytes   922 Mbits/sec  822   46.4 KBytes

[  5]   8.06-9.06   sec   109 MBytes   913 Mbits/sec  843   59.4 KBytes

[  5]   9.06-10.07  sec   110 MBytes   917 Mbits/sec  815   42.3 KBytes

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.07  sec  1.08 GBytes   918 Mbits/sec  8320
sender
[  5]   0.00-10.11  sec  1.08 GBytes   915 Mbits/sec
 receiver

iperf Done.

cc

On Fri, Oct 18, 2024 at 9:13=E2=80=AFAM void <void@f-m.fm> wrote:

> On Fri, Oct 18, 2024 at 07:28:49AM -0400, Cheng Cui wrote:
>
> >The patch is a TCP congestion control algorithm improvement. So to
> >be clear, it only impacts a TCP data sender. These hosts are just traffi=
c
> >forwarders, not TCP sender/receiver.
> >
> >I can send you a patch for the FreeBSD 14/stable to test performance
> >improvement.
>
> sure! I'm happy to test
>
> >If you think FreeBSD 14.x releases are critical to your business, or you
> >can't wait until FreeBSD 15 is released, you can file a request to add
> this
> >patch in the 14.x. I think https://bugs.freebsd.org/bugzilla/ is where a
> >user can file such request. If it is approved, which I am not sure if
> >it can be approved, then maybe it can be included in the next 14.x
> release.
>
> thank you, I'll try :D
> --
>
>

--=20
Best Regards,
Cheng Cui

--000000000000db2dbc0624fdac81
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Change the subject to `Performance test for CUBIC in =
stable/14`, was `<span style=3D"font-family:&quot;Google Sans&quot;,Roboto,=
RobotoDraft,Helvetica,Arial,sans-serif;font-size:14.000001px">Re: Performan=
ce issues with vnet jails + epair + bridge</span>`.</div><div><br></div><di=
v>I actually prepared two patches, one depends on the other:</div><div><br>=
</div><div><font face=3D"monospace"><a href=3D"https://reviews.freebsd.org/=
D47218">https://reviews.freebsd.org/D47218</a>; =C2=A0 =C2=A0 &lt;&lt; apply=
 this patch firstly<br></font></div><div><font face=3D"monospace"><a href=
=3D"https://reviews.freebsd.org/D47213">https://reviews.freebsd.org/D47213<=
/a> =C2=A0 =C2=A0 &lt;&lt; apply this patch secondly</font><br></div><div><=
br></div><div>Please let me know if you have=C2=A0any questions.</div><div>=
<br></div><div>It passed my local test on a 1% drop rate link, with nearly =
3.9X performance improvement.</div><div><br></div><div>before patching:</di=
v><div>[ ID] Interval =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Transfer =C2=A0 =
=C2=A0 Bitrate =C2=A0 =C2=A0 =C2=A0 =C2=A0 Retr =C2=A0Cwnd<br>[ =C2=A05] =
=C2=A0 0.00-1.07 =C2=A0 sec =C2=A027.0 MBytes =C2=A0 211 Mbits/sec =C2=A020=
7 =C2=A0 12.8 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 1.07-2.12 =
=C2=A0 sec =C2=A018.0 MBytes =C2=A0 144 Mbits/sec =C2=A0151 =C2=A0 11.4 KBy=
tes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 2.12-3.07 =C2=A0 sec =C2=A02=
2.0 MBytes =C2=A0 194 Mbits/sec =C2=A0189 =C2=A0 11.8 KBytes =C2=A0 =C2=A0 =
=C2=A0 <br>[ =C2=A05] =C2=A0 3.07-4.07 =C2=A0 sec =C2=A023.0 MBytes =C2=A0 =
194 Mbits/sec =C2=A0203 =C2=A0 10.8 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=
=A05] =C2=A0 4.07-5.06 =C2=A0 sec =C2=A018.0 MBytes =C2=A0 153 Mbits/sec =
=C2=A0165 =C2=A0 15.0 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 5.0=
6-6.11 =C2=A0 sec =C2=A025.0 MBytes =C2=A0 200 Mbits/sec =C2=A0227 =C2=A0 2=
6.9 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 6.11-7.07 =C2=A0 sec =
=C2=A023.0 MBytes =C2=A0 201 Mbits/sec =C2=A0189 =C2=A0 10.7 KBytes =C2=A0 =
=C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 7.07-8.07 =C2=A0 sec =C2=A023.0 MBytes =
=C2=A0 193 Mbits/sec =C2=A0215 =C2=A0 12.7 KBytes =C2=A0 =C2=A0 =C2=A0 <br>=
[ =C2=A05] =C2=A0 8.07-9.03 =C2=A0 sec =C2=A022.0 MBytes =C2=A0 191 Mbits/s=
ec =C2=A0185 =C2=A0 10.4 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 =
9.03-10.09 =C2=A0sec =C2=A024.0 MBytes =C2=A0 191 Mbits/sec =C2=A0219 =C2=
=A0 1.41 KBytes =C2=A0 =C2=A0 =C2=A0 <br>- - - - - - - - - - - - - - - - - =
- - - - - - - -<br>[ ID] Interval =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Transf=
er =C2=A0 =C2=A0 Bitrate =C2=A0 =C2=A0 =C2=A0 =C2=A0 Retr<br>[ =C2=A05] =C2=
=A0 0.00-10.09 =C2=A0sec =C2=A0 225 MBytes =C2=A0 187 Mbits/sec =C2=A01950 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 sender<br>[ =C2=A05] =C2=A0 0.00-=
10.14 =C2=A0sec =C2=A0 225 MBytes =C2=A0 186 Mbits/sec =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0receiver<br><br>iperf Done.<br></=
div><div><br></div><div>after patching:</div><div>[ ID] Interval =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 Transfer =C2=A0 =C2=A0 Bitrate =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 Retr =C2=A0Cwnd<br>[ =C2=A05] =C2=A0 0.00-1.08 =C2=A0 sec =C2=A0=
 118 MBytes =C2=A0 919 Mbits/sec =C2=A0872 =C2=A0 47.5 KBytes =C2=A0 =C2=A0=
 =C2=A0 <br>[ =C2=A05] =C2=A0 1.08-2.07 =C2=A0 sec =C2=A0 109 MBytes =C2=A0=
 917 Mbits/sec =C2=A0849 =C2=A0 56.9 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=
=A05] =C2=A0 2.07-3.09 =C2=A0 sec =C2=A0 111 MBytes =C2=A0 915 Mbits/sec =
=C2=A0810 =C2=A0 54.5 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 3.0=
9-4.07 =C2=A0 sec =C2=A0 108 MBytes =C2=A0 922 Mbits/sec =C2=A0831 =C2=A0 4=
3.8 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 4.07-5.07 =C2=A0 sec =
=C2=A0 109 MBytes =C2=A0 919 Mbits/sec =C2=A0813 =C2=A0 31.1 KBytes =C2=A0 =
=C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 5.07-6.02 =C2=A0 sec =C2=A0 103 MBytes =
=C2=A0 913 Mbits/sec =C2=A0815 =C2=A0 60.2 KBytes =C2=A0 =C2=A0 =C2=A0 <br>=
[ =C2=A05] =C2=A0 6.02-7.07 =C2=A0 sec =C2=A0 116 MBytes =C2=A0 921 Mbits/s=
ec =C2=A0850 =C2=A0 58.2 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 =
7.07-8.06 =C2=A0 sec =C2=A0 109 MBytes =C2=A0 922 Mbits/sec =C2=A0822 =C2=
=A0 46.4 KBytes =C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 8.06-9.06 =C2=A0=
 sec =C2=A0 109 MBytes =C2=A0 913 Mbits/sec =C2=A0843 =C2=A0 59.4 KBytes =
=C2=A0 =C2=A0 =C2=A0 <br>[ =C2=A05] =C2=A0 9.06-10.07 =C2=A0sec =C2=A0 110 =
MBytes =C2=A0 917 Mbits/sec =C2=A0815 =C2=A0 42.3 KBytes =C2=A0 =C2=A0 =C2=
=A0 <br>- - - - - - - - - - - - - - - - - - - - - - - - -<br>[ ID] Interval=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Transfer =C2=A0 =C2=A0 Bitrate =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 Retr<br>[ =C2=A05] =C2=A0 0.00-10.07 =C2=A0sec =C2=A01=
.08 GBytes =C2=A0 918 Mbits/sec =C2=A08320 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 sender<br>[ =C2=A05] =C2=A0 0.00-10.11 =C2=A0sec =C2=A01.08 GByt=
es =C2=A0 915 Mbits/sec =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0receiver<br><br>iperf Done.<br></div><div><br></div>cc<div><br=
><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Fri, O=
ct 18, 2024 at 9:13=E2=80=AFAM void &lt;<a href=3D"mailto:void@f-m.fm">void=
@f-m.fm</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"=
margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;bord=
er-left-color:rgb(204,204,204);padding-left:1ex">On Fri, Oct 18, 2024 at 07=
:28:49AM -0400, Cheng Cui wrote:<br>
<br>
&gt;The patch is a TCP congestion control algorithm improvement. So to<br>
&gt;be clear, it only impacts a TCP data sender. These hosts are just traff=
ic<br>
&gt;forwarders, not TCP sender/receiver.<br>
&gt;<br>
&gt;I can send you a patch for the FreeBSD 14/stable to test performance<br=
>
&gt;improvement.<br>
<br>
sure! I&#39;m happy to test<br>
<br>
&gt;If you think FreeBSD 14.x releases are critical to your business, or yo=
u<br>
&gt;can&#39;t wait until FreeBSD 15 is released, you can file a request to =
add this <br>
&gt;patch in the 14.x. I think <a href=3D"https://bugs.freebsd.org/bugzilla=
/" rel=3D"noreferrer" target=3D"_blank">https://bugs.freebsd.org/bugzilla/<=
/a> is where a <br>
&gt;user can file such request. If it is approved, which I am not sure if <=
br>
&gt;it can be approved, then maybe it can be included in the next 14.x rele=
ase.<br>
<br>
thank you, I&#39;ll try :D<br>
-- <br>
<br>
</blockquote></div><br clear=3D"all"><div><br></div><span class=3D"gmail_si=
gnature_prefix">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature"><d=
iv dir=3D"ltr"><div></div>Best Regards,<div>Cheng Cui</div></div></div></di=
v></div>

--000000000000db2dbc0624fdac81--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGaXuiKD-b4PGrqfxy9zk-BRxU==HMc9KshqyJGzH8saeOLf1A>