[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Qemu-ppc] 2x-3x tcg performance regression on ppc64 (m
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-devel] [Qemu-ppc] 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.