On Thu, Mar 14, 2024 at 7:38 PM Sean Christopherson <seanjc@xxxxxxxxxx> wrote: > > On Thu, Mar 14, 2024, Paolo Bonzini wrote: > > On Fri, Mar 8, 2024 at 11:37 PM Sean Christopherson <seanjc@xxxxxxxxxx> wrote: > > > > > > - Zap TDP MMU roots at 4KiB granularity to minimize the delay in yielding if > > > a reschedule is needed, e.g. if a high priority task needs to run. Because > > > KVM doesn't support yielding in the middle of processing a zapped non-leaf > > > SPTE, zapping at 1GiB granularity can result in multi-millisecond lag when > > > attempting to schedule in a high priority. > > > > > > > Would 2 MiB provide a nice middle ground? > > Not really? > > Zapping at 2MiB definitely fixes the worst of the tail latencies, but there is > still a measurable difference between 2MiB and 4KiB. Yeah, but you said multi millisecond so I guessed 5/512 is a 10 microsecond latency, which should be pretty acceptable (for PREEMPT_RT tests at Red Hat we shoot at 10-15 worst case, so for CONFIG_PREEMPT it would be more than enough). > And on the other side of the > coing, I was unable to observe a meaningful difference in total runtime by zapping > at 2MiB, or even 1GiB, versus 4KiB. Ok, that's the answer. Paolo > In other words, AFAICT, there's no need to shoot for a middle ground because trying > to zap at larger granularities doesn't buy us anything. >