base-hw: Virtualbox thread priorities

Adrian-Ken Rueegsegger ken at ...309...
Thu Jul 2 12:02:53 CEST 2015


Hi,

While investigating the cause for the performance discrepancy of
Virtualbox on NOVA vs hw_x86_64[_muen] [1], I have determined, with help
from Alexander, that Virtualbox thread priorities [2] are not applied on
base-hw. Even though priorities are specified when constructing the
Cpu_connection [3], they have no effect since no quota is subsequently
assigned/transferred. According to the 14.11 release notes [4], threads
without quota have no guarantee to be scheduled and their priority is
ignored. I believe this is the main cause for the difference in
execution speed of Virtualbox on NOVA and base-hw.

I was wondering if you could confirm my analysis of the issue and
provide some pointers on how to best achieve the proper application of
Virtualbox thread priorities on base-hw.

Regards,
Adrian

[1] - Even in recompiler-only mode the guest execution on NOVA is
considerably faster than on hw_x86_64 or hw_x86_64_muen
[2] -
https://www.virtualbox.org/browser/vbox/trunk/include/iprt/thread.h#L90
[3] -
https://github.com/genodelabs/genode/blob/master/repos/ports/src/virtualbox/thread.cc#L56
[4] -
http://genode.org/documentation/release-notes/14.11#Trading_CPU_time_between_components_using_the_HW_kernel




More information about the users mailing list