[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4ccbafb5-9157-ec73-c751-ec71164f8688@redhat.com>
Date: Tue, 2 Aug 2022 19:42:49 +0200
From: Paolo Bonzini <pbonzini@...hat.com>
To: Sean Christopherson <seanjc@...gle.com>,
David Matlack <dmatlack@...gle.com>
Cc: Vipin Sharma <vipinsh@...gle.com>, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] KVM: x86/mmu: Make page tables for eager page splitting
NUMA aware
On 8/2/22 19:22, Sean Christopherson wrote:
> Userspace can already force the ideal setup for eager page splitting by configuring
> vNUMA-aware memslots and using a task with appropriate policy to toggle dirty
> logging. And userspace really should be encouraged to do that, because otherwise
> walking the page tables in software to do the split is going to be constantly
> accessing remote memory.
Yes, it's possible to locate the page tables on the node that holds the
memory they're mapping by enable dirty logging from different tasks for
different memslots, but that seems a bit weird.
Walking the page tables in software is going to do several remote memory
accesses, but it will do that in a thread that probably is devoted to
background tasks anyway. The relative impact of remote memory accesses
in the thread that enables dirty logging vs. in the vCPU thread should
also be visible in the overall performance of dirty_log_perf_test.
So I agree with Vipin's patch and would even extend it to all page table
allocations, however dirty_log_perf_test should be run with fixed CPU
mappings to measure accurately the impact of the remote memory accesses.
Paolo
Powered by blists - more mailing lists