On 17.12.2019 17:48, Andrew Cooper wrote:
On 17/12/2019 14:40, Sergey Kovalev wrote:
On break point event eight context switches occures.

With fast single step it is possible to shorten path for two context
switches
and gain 35% spead-up.

Was tested on Debian branch of Xen 4.12. See at:
https://github.com/skvl/xen/tree/debian/knorrie/4.12/fast-singlestep

Rebased on master:
https://github.com/skvl/xen/tree/fast-singlestep

Signed-off-by: Sergey Kovalev <[email protected]>

35% looks like a good number, but what is "fast single step"?  All this
appears to be is plumbing for to cause an altp2m switch on single step.

~Andrew


You are right. I should quoted "fast single step".

Original INT#3 path is like this (in PlangUML):
@startuml
VM->Xen : EXIT_REASON_EXCEPTION_NMI
Xen->LibVMI: request(VM_EVENT_REASON_SOFTWARE_BREAKPOINT)
LibVMI->Xen: response(singlestep | altp2m)
Xen->VM:
VM->Xen: EXIT_REASON_MONITOR_TRAP_FLAG
Xen->LibVMI: request(VM_EVENT_REASON_SINGLESTEP)
LibVMI->Xen: response(altp2m)
Xen->VM:
@enduml

With fast single step it looks like this:
@startuml
VM->Xen : EXIT_REASON_EXCEPTION_NMI
Xen->LibVMI: request(VM_EVENT_REASON_SOFTWARE_BREAKPOINT)
LibVMI->Xen: response(fast singlestep | altp2m)
Xen->VM:
VM->Xen: EXIT_REASON_MONITOR_TRAP_FLAG
Xen->Xen: fast singlestep
Xen->VM:
@enduml

So we just store altp2m index and switch to it on MTF.

_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to