qemu-ppc
[Top][All Lists]
Advanced

[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>



reply via email to

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