qemu-ppc
[Top][All Lists]
Advanced

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

Re: [Qemu-ppc] [Qemu-devel] 2x-3x tcg performance regression on ppc64 (m


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-ppc] [Qemu-devel] 2x-3x tcg performance regression on ppc64 (maybe others)
Date: Tue, 5 Feb 2019 15:47:07 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0

Hi Peter,

On 2/5/19 2:45 PM, Peter Maydell wrote:
> On Tue, 5 Feb 2019 at 08:37, Howard Spoelstra <address@hidden> wrote:
>> On Fri, Feb 1, 2019 at 11:54 PM Cleber Rosa <address@hidden> wrote:
>>>
>>> While working on the "boot_linux_console.py" tests, after a given
>>> rebase, I noticed that the ppc64 specific test began timing out.  The
>>> original timeout set to the test was 60 seconds, and it "always" had
>>> room to spare when running either on my system, or on Travis CI.
>>>
>> Hi,
>>
>> As reported on IRC on 31-01, performance loss also occurs with 
>> qemu-system-ppc:
>> "I noticed a substantial performance loss (~35% in processor benchmark) in 
>> qemu-system-ppc running Mac OS 9.2. Bisecting shows that 
>> https://github.com/qemu/qemu/commit/f7b78602fdc6c6e4befc90159da8e93900b4bcb1 
>> introduces the issue. Reverting brings performance back."
> 
> Yeah; Mark Cave-Ayland did a bit more digging into this last night,
> and I have a patch that fixes it. I'll send that in a moment when
> I've confirmed that I've caught all the places we need to fold
> the cluster index into the hash cflags value.

I was going to send this patch and was looking for to fill the
"Reported-by" tag to finalize the commit description before sending:

-- >8 --
diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
index aa7b81aaf0..8dc2aab60e 100644
--- a/include/exec/exec-all.h
+++ b/include/exec/exec-all.h
@@ -418,7 +418,8 @@ static inline uint32_t tb_cflags(const
TranslationBlock *tb)
 static inline uint32_t curr_cflags(void)
 {
     return (parallel_cpus ? CF_PARALLEL : 0)
-         | (use_icount ? CF_USE_ICOUNT : 0);
+         | (use_icount ? CF_USE_ICOUNT : 0)
+         | CF_CLUSTER_MASK;
 }
---

I believe your patch description is way more correct/detailled than mine :P

Regards,

Phil.



reply via email to

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