All of lore.kernel.org
 help / color / mirror / Atom feed
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

  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.