As the bypass mode seems to affect performance greatly depending on the specific configuration, it may make sense to use a moduleparam to control it I'd vote for it being in VMD mode (non-bypass) by default. On 12/27/2022 7:19 PM, Xinghui Li wrote: > Jonathan Derrick <jonathan.derrick@xxxxxxxxx> 于2022年12月28日周三 06:32写道: >> >> 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. > > Firstly,I am sorry for my words misleading you. We totally tested 12 drives. > And each drive run in 6 CPU cores with 8 jobs. > > Secondly, I try to test the drives with VMD disabled,I found the results to > be largely consistent with bypass mode. I suppose the bypass mode just > "bypass" the VMD controller. > > The last one,we found in bypass mode the CPU idle is 91%. But in remapping mode > the CPU idle is 78%. And the bypass's context-switchs is much fewer > than the remapping > mode's. It seems the system is watiing for something in bypass mode.