|
Description
|
The hypervisor includes a set of performance counters which may be enabled at compile time to collect performance information about the behaviour of the hypervisor.
When compiled with these counters enabled, they can be accessed from the Xen console using the 'p' key. They can be reset to zero during execution using the 'P' key.
These statistics are useful when analysing hypervisor performance problems and it may be that they should be enabled by default in production systems. Measuring the performance impact (i.e. cost) of the counters will help decide whether they should be enabled by default.
Is it possible to make it dynamic enough as to not have a performance
impact when disabled?
The problem is that the performance counters are a compile time option at the moment. This means two enhancements would be required:
- Modify the code so that enabling/disabling counters is a runtime option.
- Minimising overhead when disabled.
It's entirely possible to do this. The amount of work involved is not that significant, I think. My main objections to doing the work are thinking that it will be difficult to reduce the overhead when disabled and that it would probably be made redundant by any dtrace work that we performed on the hypervisor.
|