Bringing in Konrad because... On Thu, 2017-06-08 at 11:37 +0200, Juergen Gross wrote: > On 07/06/17 20:19, Stefano Stabellini wrote: > > On Wed, 7 Jun 2017, Juergen Gross wrote: > > > On 06/06/17 21:08, Stefano Stabellini wrote: > > > > > > > > 2) PV suspend/resume > > > > 3) vector callback > > > > 4) interrupt remapping > > > > > > > > 2) is not on the hot path. > > > > I did individual measurements of 3) at some points and it was a > > > > clear win. > > > > > > That might depend on the hardware. Could it be newer processors > > > are > > > faster here? > > > > I don't think so: the alternative it's an emulated interrupt. It's > > slower under all points of view. > > What about APIC virtualization of modern processors? Are you sure > e.g. > timer interrupts aren't handled completely by the processor? I guess > this might be faster than letting it be handled by the hypervisor and > then use the callback into the guest. > ... I kind of remember an email exchange we had, not here on the list, but in private, about some apparently weird scheduling behavior you were seeing, there at Oracle, on a particular benchmark/customer's workload. Not that this is directly related, but I seem to also recall that you managed to find out that some of the perf difference (between baremetal and guest) was due to vAPIC being faster than the PV path we were taking? What I don't recall, though, is whether your guest was PV or (PV)HVM... Do you remember anything more precisely than this? It was like one or two years ago... (I'll dig in the archives for the emails.) Regards, Dario -- <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK)