On Wed, Nov 12, 2014 at 7:51 AM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > > > On 12/11/2014 16:32, Gleb Natapov wrote: >> > > > userspace exit, urn 17560 17726 17628 17572 17417 >> > > > lightweight exit, urn 3316 3342 3342 3319 3328 >> > > > userspace exit, LOAD_EFER, guest!=host 12200 11772 12130 12164 12327 >> > > > lightweight exit, LOAD_EFER, guest!=host 3214 3220 3238 3218 3337 >> > > > userspace exit, LOAD_EFER, guest=host 11983 11780 11920 11919 12040 >> > > > lightweight exit, LOAD_EFER, guest=host 3178 3193 3193 3187 3220 >> > > >> > > Is this with Andy's patch that skips LOAD_EFER when guest=host, or the one >> > > that always switch LOAD_EFER? >> > >> > Skip LOAD_EFER when guest=host. >> >> So guest=host is a little bit better than guest!=host so looks like >> skipping LOAD_EFER helps, but why "lightweight exit, urn" worse than >> guest=host though, it should be exactly the same as long as NX bit is >> the same in urn test, no? > > I don't know---it is very much reproducible though. It is not my > machine so I cannot run perf on it, but I can try to find a similar one > in the next few days. Assuming you're running both of my patches (LOAD_EFER regardless of nx, but skip LOAD_EFER of guest == host), then some of the speedup may be just less code running. I haven't figured out exactly when vmx_save_host_state runs, but my patches avoid a call to kvm_set_shared_msr, which is worth a few cycles. --Andy > > Paolo -- Andy Lutomirski AMA Capital Management, LLC -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html