• Like Xu's avatar
    KVM: x86: Use static calls to reduce kvm_pmu_ops overhead · 1921f3aa
    Like Xu authored
    Use static calls to improve kvm_pmu_ops performance, following the same
    pattern and naming scheme used by kvm-x86-ops.h.
    
    Here are the worst fenced_rdtsc() cycles numbers for the kvm_pmu_ops
    functions that is most often called (up to 7 digits of calls) when running
    a single perf test case in a guest on an ICX 2.70GHz host (mitigations=on):
    
    		|	legacy	|	static call
    ------------------------------------------------------------
    .pmc_idx_to_pmc	|	1304840	|	994872 (+23%)
    .pmc_is_enabled	|	978670	|	1011750 (-3%)
    .msr_idx_to_pmc	|	47828	|	41690 (+12%)
    .is_valid_msr	|	28786	|	30108 (-4%)
    Signed-off-by: default avatarLike Xu <likexu@tencent.com>
    [sean: Handle static call updates in pmu.c, tweak changelog]
    Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
    Message-Id: <20220329235054.3534728-5-seanjc@google.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    1921f3aa
kvm-x86-pmu-ops.h 929 Bytes