I think he was asking if SIMD instructions could work serially internally instead of in parallel - and there are only 1 or 2 such SIMD instructions, as it's not really the idea.

As for processing SIMD instructions at the same time, while pairing rules can be complex & interleaving unrelated 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, 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 depending on which processor you are targeting (the
pipeline depth is different for core versus pentium versus cerelon, etc)

Compilers do this automatically now, so it's a bit of a lost art.
Intel's compiler combined with the Intrinsics library gives you the
best of both worlds - automatic code re-arrangement and pre-optimized
common functions.
There are other restrictions on using SIMD code as well - I seem to
remember something about no longer being allowed in in-line code
in C, only via intrinsics or as a separate assem lang file.

So, the actual syntax of incorporating SIMD into a project will
vary whether you're using the Intel Compiler, GCC, Visual Studio,
CLANG/LLVM.

My experience with this was implementing a 3 band EQ and Dynamics
section of a mixer where 4 channels were processed at the same time,
circa 2007, so things have probably changed since then.

---

On 4/14/2015 10:13 AM, Eric Christiansen wrote:
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 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 the source data for the next operation, right?

This came up in thinking about how to optimize an anti-aliasing routine.
If, for example, the process is oversampling by 4 and running each through
a low pass filter and then averaging the results, I was wondering if
there's some way of using some SIMD process to speed this up, specifically
the part sending each sample through the filter. Since each piece has to go
through sequentially, I would need to use the result of the first filter
tick as the input for the second filter tick.

But that's not possible, right?

Thanks!

--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews,
dsp links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


NOTICE: This electronic mail message and its contents, including any attachments hereto (collectively, "this e-mail"), is hereby designated as "confidential and proprietary." This e-mail may be viewed and used only by the person to whom it has been sent and his/her employer solely for the express purpose for which it has been disclosed and only in accordance with any confidentiality or non-disclosure (or similar) agreement between TEAC Corporation or its affiliates and said employer, and may not be disclosed to any other person or entity.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


-----
Aucun virus trouve dans ce message.
Analyse effectuee par AVG - www.avg.fr
Version: 2015.0.5863 / Base de donnees virale: 4331/9541 - Date: 15/04/2015
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp

Reply via email to