Re: VirtIO Net Tuning
Mark Saad <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.net |
|---|---|
| Message-ID | <[email protected]> |
> On Mar 25, 2026, at 11:55 AM, Michael Tuexen <[email protected]> wrote: > > >> >> On 25. Mar 2026, at 16:20, Mark Saad <[email protected]> wrote: >> >> >> >>> On Wed, Mar 25, 2026 at 10:54 AM Michael Tuexen <[email protected]> wrote: >>>> On 25. Mar 2026, at 15:06, Mark Saad <[email protected]> wrote: >>> >>> Hello All >>> I have been playing with FreeBSD 14.3-RELEASE and 15.0-REELASE amd64 qemu powered vms on a Linux cloud hosting setup. I have noticed that with VirtIO net ( vtnet ) interfaces there is some sort of tuning required , or there is some sort of limitation on the packets per second and overall throughput the nics can push. I am not able to get any one interface to push more then 6Gb/s bursts and 5.5Gb/s sustained. Before I go off the deep end with details has anyone run into this , is this a known issue ? >> Hi Mark, >> >> as indicated by Mike, there has been a lot of improvements to vtnet in 14.4 and 15.0 >> such that no special tuning is required. >> If you find that some tuning is necessary to improve things, I would like to know, >> since this is not intended. >> I am not saying that the vtnet driver can't be improved, only that the default >> settings should not need tweaking. >> >> Best regards >> Michael >>> >>> -- >>> mark saad | [email protected] >> >> >> Mike / Michael >> I just tried FreeBSD 14.4 and saw the same results . The simple test is this. >> Two VMS in the same network . Each VM has 14.4-RELEASE from using the IMAGE . >> Each VM has 8 cores 16G ram , one vtnet nic and some disk. >> >> fish 10.240.65.6 sending to bird 10.240.65.7. >> >> root@fish:~ # iperf3 -c 10.240.65.7 -p 8080 >> Connecting to host 10.240.65.7, port 8080 >> [ 5] local 10.240.65.8 port 10106 connected to 10.240.65.7 port 8080 >> [ ID] Interval Transfer Bitrate Retr Cwnd >> [ 5] 0.00-1.06 sec 386 MBytes 3.04 Gbits/sec 0 1.20 MBytes >> [ 5] 1.06-2.04 sec 368 MBytes 3.17 Gbits/sec 0 2.29 MBytes >> [ 5] 2.04-3.05 sec 394 MBytes 3.26 Gbits/sec 0 3.44 MBytes >> [ 5] 3.05-4.01 sec 359 MBytes 3.14 Gbits/sec 0 3.92 MBytes >> [ 5] 4.01-5.04 sec 395 MBytes 3.22 Gbits/sec 0 3.92 MBytes >> [ 5] 5.04-6.04 sec 342 MBytes 2.86 Gbits/sec 0 3.92 MBytes >> [ 5] 6.04-7.06 sec 426 MBytes 3.48 Gbits/sec 0 3.92 MBytes >> [ 5] 7.06-8.02 sec 369 MBytes 3.25 Gbits/sec 0 3.92 MBytes >> [ 5] 8.02-9.04 sec 422 MBytes 3.46 Gbits/sec 0 3.92 MBytes >> [ 5] 9.04-10.02 sec 244 MBytes 2.08 Gbits/sec 0 3.92 MBytes >> - - - - - - - - - - - - - - - - - - - - - - - - - >> [ ID] Interval Transfer Bitrate Retr >> [ 5] 0.00-10.02 sec 3.62 GBytes 3.10 Gbits/sec 0 sender >> [ 5] 0.00-10.02 sec 3.61 GBytes 3.10 Gbits/sec receiver > What is limiting the throughput? Are you CPU limited or bandwidth limited or limited > by something else? > > What tuning gives you a better throughput? > > Best regards > Michael >> >> iperf Done. >> root@fish:~ # >> >> Running 15.0-RELEASE was not much of a difference. >> >> >> -- >> mark saad | [email protected] So this is very strange, when the vms are deployed cascade lake cpu hosts with connect-x 5 nics i am never going beyond 5Gb/s . Switch to a Granite rapids host with connect-x 6 nics the issue goes away. Thats the thing that was bothering me, nothing in the vms indicated an issue outside of some weird driver bug . I am not confident what this is , i am going to see if pcaps show anything out of the ordinary . --- Mark Saad | [email protected]