On 7/20/23 8:06 AM, Michael S. Tsirkin wrote: > On Thu, Feb 02, 2023 at 05:25:17PM -0600, Mike Christie wrote: >> For vhost workers we use the kthread API which inherit's its values from >> and checks against the kthreadd thread. This results in the wrong RLIMITs >> being checked, so while tools like libvirt try to control the number of >> threads based on the nproc rlimit setting we can end up creating more >> threads than the user wanted. >> >> This patch has us use the vhost_task helpers which will inherit its >> values/checks from the thread that owns the device similar to if we did >> a clone in userspace. The vhost threads will now be counted in the nproc >> rlimits. And we get features like cgroups and mm sharing automatically, >> so we can remove those calls. >> >> Signed-off-by: Mike Christie <michael.christie@xxxxxxxxxx> >> Acked-by: Michael S. Tsirkin <mst@xxxxxxxxxx> > > > Hi Mike, > So this seems to have caused a measureable regression in networking > performance (about 30%). Take a look here, and there's a zip file > with detailed measuraments attached: > > https://bugzilla.redhat.com/show_bug.cgi?id=2222603 > > > Could you take a look please? > You can also ask reporter questions there assuming you > have or can create a (free) account. > Sorry for the late reply. I just got home from vacation. The account creation link seems to be down. I keep getting a "unable to establish SMTP connection to bz-exim-prod port 25 " error. Can you give me Quan's email? I think I can replicate the problem. I just need some extra info from Quan: 1. Just double check that they are using RHEL 9 on the host running the VMs. 2. The kernel config 3. Any tuning that was done. Is tuned running in guest and/or host running the VMs and what profile is being used in each. 4. Number of vCPUs and virtqueues being used. 5. Can they dump the contents of: /sys/kernel/debug/sched and sysctl -a on the host running the VMs. 6. With the 6.4 kernel, can they also run a quick test and tell me if they set the scheduler to batch: ps -T -o comm,pid,tid $QEMU_THREAD then for each vhost thread do: chrt -b -p 0 $VHOST_THREAD Does that end up increasing perf? When I do this I see throughput go up by around 50% vs 6.3 when sessions was 16 or more (16 was the number of vCPUs and virtqueues per net device in the VM). Note that I'm not saying that is a fix. It's just a difference I noticed when running some other tests. _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization