No one is able to confirm that a SIMD operation can't use its own output,
or provide any insight on how it might be accomplished?
On Sat, Apr 11, 2015 at 10:13 AM, Eric Christiansen eric8939...@gmail.com
wrote:
Hi there. (Long time reader, first time poster. Yay!)
I haven't done much with
Your intuition is correct that SIMD can't use the output of one
sub-operation as an input to another in the same vector. This poses a
problem for stuff like recursive filters particularly. For FIR filters it
is not as much of an obstacle, since the output at any particular time is
only a function
Following the SIMD instruction with a NOP, or interleaving with other
bits of unrelated code is a common DSP trick for dealing with this
problem.
You'd have to look up the documentation for how many NOPs are needed
before the SIMD result is available back in the register, and that
may vary
Right, with SIMD you buy in bulk so naive implementations of work
where each sample needs processing before the next sample is
problematic.
Intuitively it seems like if you get creative, work out some math, and
do some overlapping SIMD math, you might be able to do a factory
line type of setup,
operations is common, I never heard
of using NOPs in this case - what would it do?
-Message d'origine-
From: Tom Duffy
Sent: Tuesday, April 14, 2015 7:35 PM
To: music-dsp@music.columbia.edu
Subject: Re: [music-dsp] recursive SIMD?
Following the SIMD instruction with a NOP
Hi there. (Long time reader, first time poster. Yay!)
I haven't done much with SIMD in the past, so my experience is pretty low,
but my understanding is that each data piece must be defined prior to the
operation, correct? Meaning that you can't use result of the operation of
one piece of data as