[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation.
From: |
Edgar E. Iglesias |
Subject: |
Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation. |
Date: |
Tue, 25 Jan 2011 17:48:16 +0100 |
User-agent: |
Mutt/1.5.20 (2009-06-14) |
On Tue, Jan 25, 2011 at 08:13:53AM -0800, Richard Henderson wrote:
> On 01/25/2011 04:27 AM, Edgar E. Iglesias wrote:
> > I've tested this patch a bit and got mixed results. I tested with patched
> > CRIS and MicroBlaze translators. The patch works OK (it doesn't break
> > anything) for the usecases I had but I saw a bit of a slowdown with
> > MicroBlaze (compare to not using deposit at all).
> >
> > I suspect that the fast 8 and 16 bit x86 deposits are giving me a slight
> > speedup with CRIS. But MicroBlaze uses one bit fields into bit 2 and
> > 31. Those seem to be slower with deposit than with other tcg sequences.
> >
> > I would have guessed that at worst, this patch would be equally fast
> > as any TCG sequence. Am I missing something?
>
> With or without the i386 tcg-target.c changes?
>
> If without, then I'm stumped, since it looks like identical tcg ops
> being emitted.
It's with the tcg-target patch.
> It with, then perhaps SHLD is slower than I thought. I see that GCC
> lists this insn as "vector decoded" for AMD cores, as opposed to
> "direct decoded". If this insn is indeed microcoded on some hosts
> then maybe the i386 tcg-target patch isn't such a great idea.
OK, I see. Maybe we should try to emit an insn sequence more similar
to what tcg was emitting (for the non 8 & 16-bit deposits)?
That ought too at least give similar results as before for those and
give us a speedup for the byte and word moves.
> That said, there are still other tcg targets which support this
> operation directly. I would be shocked if you measured a slowdown
> with these changes on a ppc host, for instance.
Yep, agreed.
Cheers
- Re: [Qemu-devel] [PATCH 6/7] target-i386: Use deposit operation., (continued)
- [Qemu-devel] [PATCH 1/7] tcg: Define "deposit" as an optional operation., Richard Henderson, 2011/01/10
- [Qemu-devel] [PATCH 3/7] tcg-hppa: Implement deposit operation., Richard Henderson, 2011/01/10
- [Qemu-devel] [PATCH 4/7] tcg-ia64: Implement deposit operation., Richard Henderson, 2011/01/10
- [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Richard Henderson, 2011/01/10
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Edgar E. Iglesias, 2011/01/25
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Richard Henderson, 2011/01/25
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation.,
Edgar E. Iglesias <=
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Richard Henderson, 2011/01/25
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Edgar E. Iglesias, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Alexander Graf, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Richard Henderson, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Alexander Graf, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Avi Kivity, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Richard Henderson, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Alexander Graf, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Richard Henderson, 2011/01/26
- Re: [Qemu-devel] [PATCH 5/7] tcg-i386: Implement deposit operation., Alexander Graf, 2011/01/26