qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-arm] [PATCH v9 21/25] target-arm: don't generate WFE/YIELD cal


From: Alex Bennée
Subject: Re: [Qemu-arm] [PATCH v9 21/25] target-arm: don't generate WFE/YIELD calls for MTTCG
Date: Fri, 03 Feb 2017 11:30:12 +0000
User-agent: mu4e 0.9.19; emacs 25.1.91.7

Peter Maydell <address@hidden> writes:

> On 1 February 2017 at 15:05, Alex Bennée <address@hidden> wrote:
>> The WFE and YIELD instructions are really only hints and in TCG's case
>> they were useful to move the scheduling on from one vCPU to the next. In
>> the parallel context (MTTCG) this just causes an unnecessary cpu_exit
>> and contention of the BQL.
>>
>> Signed-off-by: Alex Bennée <address@hidden>
>> Reviewed-by: Richard Henderson <address@hidden>
>> ---
>>  target/arm/op_helper.c     |  7 +++++++
>>  target/arm/translate-a64.c |  8 ++++++--
>>  target/arm/translate.c     | 20 ++++++++++++++++----
>>  3 files changed, 29 insertions(+), 6 deletions(-)
>
> Reviewed-by: Peter Maydell <address@hidden>
>
> though I'm not much of a fan of yet another global variable :-(

It's unfortunate but I think justified in the case. parallel_cpus is a
global state that controls the emission of barriers and generation of
atomics. It does sometime get turned off for the EXCP_ATOMIC processing
(but only in a temporary exclusive region).

>
> thanks
> -- PMM


--
Alex Bennée



reply via email to

[Prev in Thread] Current Thread [Next in Thread]