From: Aurelien Jarno <aurelien@aurel32.net>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org, patches@linaro.org
Subject: Re: [Qemu-devel] [PATCH] target-arm: Move VLD/VST multiple into helper functions
Date: Fri, 3 Jun 2011 22:47:22 +0200 [thread overview]
Message-ID: <20110603204722.GE14583@volta.aurel32.net> (raw)
In-Reply-To: <BANLkTim8rz4EuWKGm0Bqc5yG03sMho21Kw@mail.gmail.com>
On Mon, May 02, 2011 at 05:01:24PM +0100, Peter Maydell wrote:
> On 20 April 2011 15:52, Peter Maydell <peter.maydell@linaro.org> wrote:
> > Move VLD/VST multiple into helper functions, as some cases can
> > generate more TCG ops than the maximum per-instruction limit
> > and certainly more than the recommended 20.
>
> I've had a review comment in private email that this patch
> slows down ffmpeg by a little over 4% (in a linux-user execution
> run where about 5% of instructions were an affected vld/vst). So
> perhaps the right approach is to increase the max-ops-per-insn limit
> and update the guidance in tcg/README instead?
>
Does this patch fixes a real issue (ie most probably a crash), or it is
just to make the arm target compliant with the README?
Two remarks there:
- The guidance in tcg/README is probably true for complex helpers in the
sense of doing a lot of logic/arithmetic operations for which the TCG
instruction set if not really rich and for which the compiler can do
a lot better. When the instruction is emulated mostly by load/store
ops, there isn't much possible optimizations left.
- Your patch calls the slow version of the _mmu functions, which doesn't
use the QEMU TLB. It is therefore normal to expect a slow down.
Unfortunately the fast version of _mmu functions are not really usable
from an helper, or at least they need a lot of code to convert an mmu
index to the right function. It is something I have on my TODO list
for some months, haven't found time to look at it.
--
Aurelien Jarno GPG: 1024D/F1BCDB73
aurelien@aurel32.net http://www.aurel32.net
next prev parent reply other threads:[~2011-06-03 20:47 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-20 14:52 [Qemu-devel] [PATCH] target-arm: Move VLD/VST multiple into helper functions Peter Maydell
2011-04-28 11:31 ` Peter Maydell
2011-05-02 16:01 ` Peter Maydell
2011-06-03 20:47 ` Aurelien Jarno [this message]
2011-06-04 10:01 ` Peter Maydell
2011-06-06 7:18 ` riku voipio
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110603204722.GE14583@volta.aurel32.net \
--to=aurelien@aurel32.net \
--cc=patches@linaro.org \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.