View Single Post
Old 10-27-2012, 06:48 AM   #16
uebertone
Human being with feelings
 
Join Date: Oct 2012
Posts: 21
Default

Quote:
Originally Posted by Stretto View Post
Is this on the near horizon?
No.

To address the "irrelevant" parts that you yourself brought up.

Quote:
Originally Posted by Stretto View Post
serializing and paralleling
Those are antonyms. That means opposites. You can have either serial or parallel not both at the same time.

Quote:
Originally Posted by Stretto View Post
I remember doing nbody simulations
That's parallelizable by simple divide and conquer audio is not.


Quote:
Originally Posted by Stretto View Post
I think many people would be surprised to learn just how much power their computer has that is not being used. Just imagine no latency issues!! EVER!!!!!
Latency is not only depending on processing power but also on well the latency of the processing.

Quote:
Originally Posted by Stretto View Post
Most things, contrary to believe, can be paralleled(even some seemingly contradictory fx like delays and such).
OK. On form of a one sample delay, also known as a 1-pole IIR filter:
Code:
void process(float *out, float *in, int n)
{
    static float coef = 0.1337f;
    out[0] = in[0]*(1-coef);
    for(int i=1; i<n; i++)
        out[i] = out[i-1]*coef + in[i]*(1-coef);
}
For everyones information the for-loop has a loop-carried flow-dependency with vector (1). Hence can not be parallelized.

Now parallelize that. I'd love to see that.

Quote:
Originally Posted by Stretto View Post
Essentially, though, a paradigm shift needs to take place. "FX" need to be written in a very specific way [...]
A shift to what? Stop using IIR filters because they can not be parallelized?

IIR filters are the basis of envelope filter which are the basis for virtually all dynamic effects that go beyond basic wave shaping. So what should we do about those effects?

Quote:
Originally Posted by Stretto View Post
Also, if the gpu could interact with the sound card then the latency would be moot.
It seems you are looking for a sound card with a more powerful form of EAX.

Quote:
Originally Posted by Stretto View Post
GPU's are generally 1000's of times faster in doing computations?
That statement might be true for non-IEEE compliant floating point computations but is false for integer arithmetic and double precision calculations.

Quote:
Originally Posted by Stretto View Post
And that many popular VST's are moving towards using them for FFT and other calculations? Do you even know what parallelization is?
I have yet to see some thing beyond FFT (which is again simple divide and conquer) being parallelized in audio.

Quote:
Originally Posted by Stretto View Post
Most algorithms use a for loop and the essential different for the GPU is to use a parallel.for(or for multi-core for that matter).
Doesn't work for my 5 liner, does it? And the audio world is filled with those!

Quote:
Originally Posted by Stretto View Post
Either there is an issue with GPU's that prevent them working well for audio or their isn't.
There is a problem. See code snippet above.

Quote:
Originally Posted by Stretto View Post
To quote them: "Zero latency mode is not supported by the GPU Edition due to a combination of factors including the mechanisms involved with transferring data to and from the GPU being much more efficient with larger blocks, a current requirement to run CUDA VST plug-ins in a separate thread (making larger block processing more efficient) and the lack of coherency in buffering schemes used by various different VST hosts complicating the above issues. It may become more practical to implement this feature in future using newer GPU architectures."

So yes current technology isn't ready for it and DAWs might be able to aid.

Quote:
Originally Posted by Stretto View Post
Then to quote some "highlights" from them: "One drawback of GPGPU computing on consumer-grade GPUs
has to be mentioned. Since these GPUs are designed for optimum
video game performance, there is no need for checking the integrity
of the GPU memory, since memory errors would only affect the
currently displayed video frame. High reliability can be either
attained by software means as described in [5], or by using GPU
hardware dedicated to GPGPU computing, which are equipped with
ECC-protected memory [6].
[...] The reason for the large maximum execution time for the CUDA
fast convolution implementation has to be identified and removed."

Good luck convincing the die-hard audiophile crowed to use potentially audio corrupting technologies!
Speaking of which the "float only" mantra of current GPGPUs will not flight with them either.

Quote:
Originally Posted by Stretto View Post
A "nice" user report on that: http://forums.atomicmpc.com.au/index...howtopic=34775

Anyway audio on GPUs likely not gonna happen unless GPUs change to true GPGPUs. What I can see is APUs.
uebertone is offline   Reply With Quote