qemu-arm
[Top][All Lists]
Advanced

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

Re: [Qemu-arm] [RFC PATCH] include/exec/cpu-defs.h: try and make SoftMMU


From: Richard Henderson
Subject: Re: [Qemu-arm] [RFC PATCH] include/exec/cpu-defs.h: try and make SoftMMU page size match target
Date: Mon, 10 Jul 2017 06:55:42 -1000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1

On 07/10/2017 04:28 AM, Alex Bennée wrote:
While the SoftMMU is not emulating the target MMU of a system there is
a relationship between its page size and that of the target. If the
target MMU is full featured the functions called to re-fill the
entries in the SoftMMU entries start moving up the perf profiles. If
we can we should try and prevent too much thrashing around by having
the page sizes the same.

What you are changing has absolutely nothing to do with page size. Mentioning page sizes just confuses the issue.

What you're changing is the number of entries in the TLB, and the mapping between pages and TLB entries. And I'm quite certain that you saw a performance increase by increasing the size of the TLB.


  #define CPU_TLB_BITS                                             \
-    MIN(8,                                                       \
+    MIN(10,                                                      \

You will find this has broken tcg/arm, because the operand to an armv6 AND (immediate) instruction is only 8 bits.

I will grant you that we could do a better job of configuring this across the tcg backends.

It also possibly warrants some work in the tcg/arm backend so that armv7 makes use of UBFX so that not-ancient arm is not so constrained.


r~



reply via email to

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