On Thu, Jan 5, 2023 at 2:59 PM Ilya Maximets <[email protected]> wrote: > > I did some experiments with a simple mono directionnal setup like: > > virtio-user testpmd/txonly --> ovs --> virtio-user testpmd/rxonly > > I had to restart testpmd between each restart of OVS: it looks like > > virtio-user (as server) reconnection has some bug. > > > > I took care to dedicate one HT by datapath thread (i.e. all physical > > cores are isolated, and ovs pmd thread runs on a HT whose sibling is > > idle. Same for testpmd rx / tx threads). > > I rely on testpmd tx stats, grabing stats for 10 runs of a few seconds. > > > > When OVS drops everything (no fwd to other port, which means we are > > only counting received packets from OVS pov): > > - master: 12.189Mpps > > - series: 12.226Mpps (+0.3%) > > > > I also tried with enabling/disabling stats support in vhost library > > (+stats means adding RTE_VHOST_USER_NET_STATS_ENABLE, resp. -stats > > means removing it): > > - master+stats: 11.962Mpps (-1.9%) > > - series-stats: 12.453Mpps (+2.1%) > > > > > > When OVS fwds (which should be what you tested, correct?): > > - master: 7.830Mpps > > - series: 7.795Mpps (-0.5%) > > > > - master+stats: 7.641Mpps (-2.5%) > > - series-stats: 7.967Mpps (+1.7%) > > > My setup is a bit different, because it's bidirectional. I have 2 > testpmd apps. One in txonly mode, the other is in mac mode. > On OVS side I have 2 PMD threads. Ports have a single queue pinned > to its own PMD thread. All the used cores are on the same NUMA, but > not siblings. Having 2 PMD threads doing RX and TX on the same port > is an important factor, because of the stats_lock contention. > > My numbers are: > > actions:NORMAL > --- > master: 7.496 Mpps > series: 7.383 Mpps (-1.5%) > > in_port=1,actions:2 > in_port=2,actions:1 > --- > master: 8.296 Mpps > series: 8.072 Mpps (-2.7%)
Ok, I can reproduce a drop. This made me realise one (ugly) issue in my patch and something I can enhance wrt to locks. I'll prepare a new revision and test it a bit more. I still have in mind your lock contention enhancement patch in the list of things to consider, but let's keep it as a last resort. -- David Marchand _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
