Re: [PATCH] PCI: vmd: Do not disable MSI-X remapping in VMD 28C0 controller

From: Jonathan Derrick
Date: Tue Dec 27 2022 - 17:32:32 EST




On 12/23/2022 2:02 AM, Xinghui Li wrote:
> Keith Busch <kbusch@xxxxxxxxxx> 于2022年12月23日周五 05:56写道:
>>
>> With 12 drives and only 6 CPUs, the bypass mode is going to get more irq
>> context switching. Sounds like the non-bypass mode is aggregating and
>> spreading interrupts across the cores better, but there's probably some
>> cpu:drive count tipping point where performance favors the other way.
>
> We found that tunning the interrupt aggregation can also bring the
> drive performance back to normal.
>
>> The fio jobs could also probably set their cpus_allowed differently to
>> get better performance in the bypass mode.
>
> We used the cpus_allowed in FIO to fix 12 dirves in 6 different CPU.
>
> By the way, sorry for emailing twice, the last one had the format problem.

The bypass mode should help in the cases where drives irqs (eg nproc) exceed
VMD I/O irqs. VMD I/O irqs for 28c0 should be min(63, nproc). You have
very few cpus for a Skylake system with that many drives, unless you mean you
are explicitly restricting the 12 drives to only 6 cpus. Either way, bypass mode
is effectively VMD-disabled, which points to other issues. Though I have also seen
much smaller interrupt aggregation benefits.