HyperBone icon indicating copy to clipboard operation
HyperBone copied to clipboard

Performance Issue

Open jocmer opened this issue 6 years ago • 5 comments

Hey!

I experience 50% loss of FPS in games like PUBG, H1z1 and CSGO. Do you have any suggestions how to improve the performance?

I already integrated SimpleVisor's MTRR implementation, which sets the right Memory Type of a EPT. (https://github.com/ionescu007/SimpleVisor/blob/master/shvvmx.c Line 26)

I also thought about using 2MB Pages instead of 4KB to improve the overall performance.

jocmer avatar Oct 15 '17 21:10 jocmer

I guess it's caused by lots of VM exits. EPT violations for DMA regions can also be an issue here. You can try to disable unneeded VM exit triggers and/or reduce amount of work done in VmxpExitHandler

DarthTon avatar Oct 20 '17 13:10 DarthTon

I disabled cr3 exit which improved the performance slightly. But the performance while gaming is still unacceptable. I also don't experience EPT violations while playing. (Tested with DbgPrint)

So I don't know if there is anything I can do other then accept it. I mean logically speaking the performance issues are logical because CPU needs to translate virtual adresses two times? (Am I right?)

jocmer avatar Nov 17 '17 09:11 jocmer

Address translation is done in CPU itself, it shoudn't add more than ~5% penalty. Try to log every VM exit and how many of them you get per second.

DarthTon avatar Nov 17 '17 09:11 DarthTon

I got around ~60 VM exits per second because of CPUID. No other VM exits are happening.

EDIT: Is this normal? ~60 exit per second shouldn't affect the performance that bad?

jocmer avatar Nov 17 '17 20:11 jocmer

GPU isn't affected by the hypervisor too, so what are any other possible reasons?

jocmer avatar Dec 12 '17 19:12 jocmer