[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implement
From: |
Thomas Huth |
Subject: |
Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented) |
Date: |
Tue, 12 Sep 2017 16:56:39 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 |
On 12.09.2017 11:20, Stefan Weil wrote:
> Am 12.09.2017 um 10:52 schrieb Stefan Weil:
>> Am 11.09.2017 um 20:24 schrieb Peter Maydell:
>>> I've also turned on a tci compile check on my pre-merge tests.
>>> (It doesn't pass "make check" for me, though...) thanks -- PMM
>>
>> "make check-qtest-ppc64" fails for me, too.
>>
>> Thomas, this seems to be again the well known timing problem
>> in tests/prom-env-test.c. The time for the test had been
>> changedfrom 30 s to 10 s to 120 s in the past.
>
> ... changed from 10 s to 30 s to 120 s ...
>
>> For TCI, even that latest value is not sufficient when
>> testing with pseries. Of course that also depends on other
>> parameters (speed of test machine, compiler flags).
>>
>> In my test pseries took nearly 5 minutes, so the test passes
>> when the loop upper limit is increased to 30000.
>
> Timing data for prom-env-test with TCI on another test machine:
>
> mac99: 78 s
> g3beige: 74 s
> pseries: 477 s
How fast is your host machine? For me the whole prom-env-test finishes
within 52 seconds (my host machine has 3.2 GHz) in TCI mode, and there
are no errors reported during "make check-qtest-ppc64".
Did you compile your QEMU with --enable-debug by accident? I think that
could explain the bad performance here - TCI with --enable-debug is not
just slow, but rather unusable slow already...
>> Is there a better way to handle this test? Why does pseries
>> still need much more time than the other machines
>> (not only with TCI)?
The problem is that the SLOF firmware just performs very badly with TCG
(it's fine on real hardware). It executes a lot of Forth code, and the
Forth interpreter uses things like computed gotos or other tricks that
basically prevent proper JIT operation here. I've done quite a bit of
optimizations in SLOF in the past already, but I've got hardly any ideas
left how to fix that further.
So I hope the problem is just the "--enable-debug" here and we could run
the test with TCI in normal builds? I'm also fine if we increase the
timeout to 5 minutes instead - it should not affect the normal users
(i.e. those who don't use TCI) and ease this situation with TCI a little
bit.
Thomas
- Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented), (continued)
- Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented), Stefan Weil, 2017/09/12
- Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented), Stefan Weil, 2017/09/12
- Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented),
Thomas Huth <=
- Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented), Paolo Bonzini, 2017/09/12
- Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented), Thomas Huth, 2017/09/21
- Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented), Richard Henderson, 2017/09/22
Re: [Qemu-devel] [PATCH] tcg/tci: do not use ldst label (never implemented), Philippe Mathieu-Daudé, 2017/09/11