[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: TCG performance on PPC64
From: |
Matheus K. Ferst |
Subject: |
Re: TCG performance on PPC64 |
Date: |
Mon, 23 May 2022 17:02:09 -0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 |
On 18/05/2022 11:11, Mark Cave-Ayland wrote:
Perhaps related to your comment above about "something else", Talospace
reports that
running TCG on a Talos II (Power 9) is actually quicker for running a
MacOS install
under qemu-system-ppc compared with KVM-PR [1]. That's certainly odd,
and at odds
with running KVM-PR on my G4 Mac Mini which gives a huge performance
boost over TCG
here. That might suggest IO has a noticeable effect on
qemu-system-ppc(64) here.
That's an interesting result. I guess we can mitigate the possible IO
impact by working from an initramfs in future tests.
Slightly more back on topic, TCG can itself emulate certain instructions
that aren't
implemented directly in the backends: e.g. compare tcg/i386/tcg-target.h
with
tcg/ppc/tcg-target.h. Perhaps there is a "hot instruction" which is used
a lot during
kernel boot which is being emulated rather than implemented directly in
the TCG PPC
backend compared with i386?
Comparing the two files, PPC has zeros for 6 TCG_HAS_*_vec, 12
TCG_HAS_*_i32, and 8 TCG_HAS_*_i64 macros that i386 implements. It might
be possible to identify how frequent they are used with uprobes or
something like that.
Finally another comment from Richard about vector instruction use from
[2]: "As an
aside, this does suggest to me that target/ppc might be well served in
moving the
ppc_vsr_t members of CPUPPCState earlier, so that this offset is
smaller". Presumably
this is because calculating smaller offsets can be done using fewer
instructions?
However I suppose this would only have an effect on vector-heavy workloads.
It may be worth a try, ppc uses some vector insns for string
manipulation that some services at early boot might use.
Thanks for your suggestions Mark,
Matheus K. Ferst
Instituto de Pesquisas ELDORADO <http://www.eldorado.org.br/>
Analista de Software
Aviso Legal - Disclaimer <https://www.eldorado.org.br/disclaimer.html>
- TCG performance on PPC64, Matheus K. Ferst, 2022/05/18
- Re: TCG performance on PPC64, Daniel Henrique Barboza, 2022/05/18
- Re: TCG performance on PPC64, Cédric Le Goater, 2022/05/18
- Re: TCG performance on PPC64, Mark Cave-Ayland, 2022/05/18
- Re: TCG performance on PPC64, Richard Henderson, 2022/05/18
- Re: TCG performance on PPC64, David Gibson, 2022/05/19