Hi Paolo. Thanks for looking into this series.

On 10/20/25 8:35 PM, Paolo Bonzini wrote:
On 10/20/25 16:32, Sean Christopherson wrote:
  : Till the hint from underlying hypervisor arrives, another idea is to
  : approximate the hint from steal time.

I think this is the first thing to look at.


The current code i have does the below: All of this happens in the Guest.
No change in host. (Host is running PowerVM, a non linux hypervisor)

At every 1second (configurable):
1. Low and High steal time thresholds are defined.(configurable)
2. Gathers steam time from all CPUs.
3. If it higher than the High threshold reduce the core(SMT8) usage by 1
4. If it lower than low threshould increase core usage by 1.
5. Avoid ping-pong as much as possible.

Its an initial code to try out if it works with plumbing the push current task 
framework
given in the series.

Perhaps single_task_running() can be exposed in the x86 steal time data structure, and in fact even in the rseq data for non-VM usecases?  This is not specific to VMs and I'd like the steal time implementation to follow the footsteps of rseq rather than the opposite.

Paolo


Sorry, I didn't follow. You mean KVM usecases?

I don't know much about rseq(on todo list). Any specific implementation i could
look at done via rseq that you are talking about?


Reply via email to