[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4d2f41ed-4cab-420a-a7ba-f11a45924c9a@linux.ibm.com>
Date: Thu, 23 Oct 2025 09:33:59 +0530
From: Shrikanth Hegde <sshegde@...ux.ibm.com>
To: Paolo Bonzini <pbonzini@...hat.com>,
Sean Christopherson <seanjc@...gle.com>
Cc: mingo@...hat.com, peterz@...radead.org, juri.lelli@...hat.com,
vincent.guittot@...aro.org, tglx@...utronix.de, yury.norov@...il.com,
maddy@...ux.ibm.com, linux-kernel@...r.kernel.org,
linuxppc-dev@...ts.ozlabs.org, gregkh@...uxfoundation.org,
vschneid@...hat.com, iii@...ux.ibm.com, huschle@...ux.ibm.com,
rostedt@...dmis.org, dietmar.eggemann@....com, vineeth@...byteword.org,
jgross@...e.com
Subject: Re: [RFC PATCH v3 00/10] paravirt CPUs and push task for less vCPU
preemption
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?
Powered by blists - more mailing lists