qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] QEmu TCG SIMD extension?
@ 2013-03-06  3:30 陳韋任 (Wei-Ren Chen)
  2013-03-06  3:47 ` Peter Maydell
  0 siblings, 1 reply; 5+ messages in thread
From: 陳韋任 (Wei-Ren Chen) @ 2013-03-06  3:30 UTC (permalink / raw)
  To: qemu-devel

Hi all,

While searching for QEMU SIMD issues, I found there was a paper presented
in 2011 [1], and the source code is also public on [2]. However, it seems
this project doesn't make any progress since last year. I update their
change to upstream and you can download from here:

  $ git clone git://github.com/azru0512/qemu.git -b neon-simd

Sadly, it can not boot the kernel image provided on [2]. Anyway, I
found there was only one thread has discussion on their work [3]. I want
to hear more feedback on their idea on adding SIMD TCG IR.

[1] http://adt.cs.upb.de/quf/quf11/quf2011_12.pdf
[2] http://tima-sls.imag.fr/www/research/qemu/simd-qemu/
[3] http://lists.gnu.org/archive/html/qemu-devel/2011-03/msg02065.html

Regards,
chenwj

-- 
Wei-Ren Chen (陳韋任)
Computer Systems Lab, Institute of Information Science,
Academia Sinica, Taiwan (R.O.C.)
Tel:886-2-2788-3799 #1667
Homepage: http://people.cs.nctu.edu.tw/~chenwj

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] QEmu TCG SIMD extension?
  2013-03-06  3:30 [Qemu-devel] QEmu TCG SIMD extension? 陳韋任 (Wei-Ren Chen)
@ 2013-03-06  3:47 ` Peter Maydell
  2013-03-06  8:14   ` 陳韋任 (Wei-Ren Chen)
  2013-03-06  8:18   ` Paolo Bonzini
  0 siblings, 2 replies; 5+ messages in thread
From: Peter Maydell @ 2013-03-06  3:47 UTC (permalink / raw)
  To: 陳韋任 (Wei-Ren Chen); +Cc: qemu-devel

On 6 March 2013 11:30, 陳韋任 (Wei-Ren Chen) <chenwj@iis.sinica.edu.tw> wrote:
> While searching for QEMU SIMD issues, I found there was a paper presented
> in 2011 [1], and the source code is also public on [2]. However, it seems
> this project doesn't make any progress since last year. I update their
> change to upstream and you can download from here:
>
>   $ git clone git://github.com/azru0512/qemu.git -b neon-simd
>
> Sadly, it can not boot the kernel image provided on [2]. Anyway, I
> found there was only one thread has discussion on their work [3]. I want
> to hear more feedback on their idea on adding SIMD TCG IR.

I think my opinions are still the same -- interesting idea, but getting
it to work with a set of IR ops which aren't target or host specific
and getting it to give correct bit-for-bit results, rounding, flags,
etc, is likely to be tricky. It would also be important to determine
first whether Neon (or other SIMD) emulation performance is truly
a major bottleneck.

-- PMM

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] QEmu TCG SIMD extension?
  2013-03-06  3:47 ` Peter Maydell
@ 2013-03-06  8:14   ` 陳韋任 (Wei-Ren Chen)
  2013-03-06  8:18   ` Paolo Bonzini
  1 sibling, 0 replies; 5+ messages in thread
From: 陳韋任 (Wei-Ren Chen) @ 2013-03-06  8:14 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel, 陳韋任 (Wei-Ren Chen)

On Wed, Mar 06, 2013 at 11:47:58AM +0800, Peter Maydell wrote:
> On 6 March 2013 11:30, 陳韋任 (Wei-Ren Chen) <chenwj@iis.sinica.edu.tw> wrote:
> > While searching for QEMU SIMD issues, I found there was a paper presented
> > in 2011 [1], and the source code is also public on [2]. However, it seems
> > this project doesn't make any progress since last year. I update their
> > change to upstream and you can download from here:
> >
> >   $ git clone git://github.com/azru0512/qemu.git -b neon-simd
> >
> > Sadly, it can not boot the kernel image provided on [2]. Anyway, I
> > found there was only one thread has discussion on their work [3]. I want
> > to hear more feedback on their idea on adding SIMD TCG IR.
> 
> I think my opinions are still the same -- interesting idea, but getting
> it to work with a set of IR ops which aren't target or host specific
> and getting it to give correct bit-for-bit results, rounding, flags,
> etc, is likely to be tricky. It would also be important to determine
> first whether Neon (or other SIMD) emulation performance is truly
> a major bottleneck.

  I found the problem and now it can boot the kernel image and run the
test. The authors claim they design the general SIMD IR after studying
various SIMD ISA. I am not an expert, and only can decide if it's true
or not by writing another frontend. Well, one of reasons I am studying
their work is to see SIMD IR could benifit our QEMU+LLVM binary
translator. ;)

Regards,
chenwj

-- 
Wei-Ren Chen (陳韋任)
Computer Systems Lab, Institute of Information Science,
Academia Sinica, Taiwan (R.O.C.)
Tel:886-2-2788-3799 #1667
Homepage: http://people.cs.nctu.edu.tw/~chenwj

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] QEmu TCG SIMD extension?
  2013-03-06  3:47 ` Peter Maydell
  2013-03-06  8:14   ` 陳韋任 (Wei-Ren Chen)
@ 2013-03-06  8:18   ` Paolo Bonzini
  2013-03-06  8:32     ` Peter Maydell
  1 sibling, 1 reply; 5+ messages in thread
From: Paolo Bonzini @ 2013-03-06  8:18 UTC (permalink / raw)
  To: Peter Maydell
  Cc: qemu-devel, "陳韋任 (Wei-Ren Chen)"

Il 06/03/2013 04:47, Peter Maydell ha scritto:
> On 6 March 2013 11:30, 陳韋任 (Wei-Ren Chen) <chenwj@iis.sinica.edu.tw> wrote:
>> While searching for QEMU SIMD issues, I found there was a paper presented
>> in 2011 [1], and the source code is also public on [2]. However, it seems
>> this project doesn't make any progress since last year. I update their
>> change to upstream and you can download from here:
>>
>>   $ git clone git://github.com/azru0512/qemu.git -b neon-simd
>>
>> Sadly, it can not boot the kernel image provided on [2]. Anyway, I
>> found there was only one thread has discussion on their work [3]. I want
>> to hear more feedback on their idea on adding SIMD TCG IR.
> 
> I think my opinions are still the same -- interesting idea, but getting
> it to work with a set of IR ops which aren't target or host specific
> and getting it to give correct bit-for-bit results, rounding, flags,
> etc, is likely to be tricky. It would also be important to determine
> first whether Neon (or other SIMD) emulation performance is truly
> a major bottleneck.

SSE operations, while not a bottleneck, are the top helpers in the
profile when booting Linux on x86.

Using common code to generate the simplest unrolled SIMD operations
(logical operations, add, subtract, compare to zero) would already help
a lot, I think.

Paolo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] QEmu TCG SIMD extension?
  2013-03-06  8:18   ` Paolo Bonzini
@ 2013-03-06  8:32     ` Peter Maydell
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Maydell @ 2013-03-06  8:32 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: qemu-devel, "陳韋任 (Wei-Ren Chen)"

On 6 March 2013 16:18, Paolo Bonzini <pbonzini@redhat.com> wrote:
> Il 06/03/2013 04:47, Peter Maydell ha scritto:
>> I think my opinions are still the same -- interesting idea, but getting
>> it to work with a set of IR ops which aren't target or host specific
>> and getting it to give correct bit-for-bit results, rounding, flags,
>> etc, is likely to be tricky. It would also be important to determine
>> first whether Neon (or other SIMD) emulation performance is truly
>> a major bottleneck.
>
> SSE operations, while not a bottleneck, are the top helpers in the
> profile when booting Linux on x86.
>
> Using common code to generate the simplest unrolled SIMD operations
> (logical operations, add, subtract, compare to zero) would already help
> a lot, I think.

Yeah, I don't mean to say it's a bad idea, just that there's a long
distance between a neat tech demo/research paper and productised
code that can be committed to mainline :-)

-- PMM

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-03-06  8:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-06  3:30 [Qemu-devel] QEmu TCG SIMD extension? 陳韋任 (Wei-Ren Chen)
2013-03-06  3:47 ` Peter Maydell
2013-03-06  8:14   ` 陳韋任 (Wei-Ren Chen)
2013-03-06  8:18   ` Paolo Bonzini
2013-03-06  8:32     ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).