Hi,

Hoping someone smarter than I can help out here 🙂 I have a Meteor Lake machine 
which has the new P/E core architecture. I am trying to optimise a mobile 
platform for on-battery runtime and from the documentation I have read this 
requires CPUs to be in ACPI state C3 (which corresponds to platform state C10). 
Though I’ve enabled cpuidle (with the corresponding GRUB parameter) the issue 
I’m having is Xen will never enter C3 on any cores once there are a certain 
number of HVMs running (on my platform it is around 3-4), no matter which cores 
they are pinned to. For example, even if I pin the HVMs (and their 
corresponding device model stubdoms) to the E-cores, the P-cores will refuse to 
enter C3 and display 99.81% residency for C2. This happens regardless of the 
number of vCPUs allocated to the HVMs (I tested it with just one allocated) nor 
the workload (it is very light, with barely any CPU time shown).

If I fully pause or shut down the HVMs however, C3 jumps up to a much more 
reasonable residency. I am using sched-credit2 as the scheduler with default 
weight and cap values.

Would appreciate any input.

Best,
Alex

Reply via email to