H
hsyq8xg
Came across a very interesting subject -- Efficient 3D Audio
Processing on the GPU.
It's available at http://www-sop.inria.fr/reves/projects/GPUAudio/
What interest about it is the ingenuity of the project, in tapping
into the enormous power of the GPU -- even the low-end videocards
based on Radeon HD 2600 GPU has 120 stream processors running in
parallel !!! -- in doing something truly amazing.
According to the article -- in comparing an optimized SSE assembly
code running on a Pentium 4 3GHz processor and an equivalent Cg/OpenGL
implementation running on a nVidia GeForce FX 5950 Ultra graphics
board on AGP 8x, with the following result ....
"The SSE implementation achieves real-time binaural rendering of 700
sound sources, while the GPU renders up to 580 in one time-frame
(about 22.5 ms). Assuming floating-point texture resampling could be
done in hardware, not requiring explicit interpolation in the shader,
the GPU could render up to 1050 sources.
For mono processing, the GPU treats up to 2150 (1 texture fetch) /
1200 (2 texture fetches and linear interpolation) sources, while the
CPU handles 1400 in the same amount of time. On average, the GPU
implementation was about 20% slower than the SSE implementation but
would become 50% faster if floating-point texture resampling was
supported in hardware."
If you read the above quote, please pay attention to the fact that the
GPU was an ancient GeForce FX 5950 Ultra, circa 2003 !!
Imagine what we can achieve with super-duper-ultra-powerful GPUs that
are on our videocards??
And if that's not enough, imagine what we can do if we can tap into
the raw power of the GPUs, with assembly language?? The entire
soundcard industry would crash and burn overnite !!
Processing on the GPU.
It's available at http://www-sop.inria.fr/reves/projects/GPUAudio/
What interest about it is the ingenuity of the project, in tapping
into the enormous power of the GPU -- even the low-end videocards
based on Radeon HD 2600 GPU has 120 stream processors running in
parallel !!! -- in doing something truly amazing.
According to the article -- in comparing an optimized SSE assembly
code running on a Pentium 4 3GHz processor and an equivalent Cg/OpenGL
implementation running on a nVidia GeForce FX 5950 Ultra graphics
board on AGP 8x, with the following result ....
"The SSE implementation achieves real-time binaural rendering of 700
sound sources, while the GPU renders up to 580 in one time-frame
(about 22.5 ms). Assuming floating-point texture resampling could be
done in hardware, not requiring explicit interpolation in the shader,
the GPU could render up to 1050 sources.
For mono processing, the GPU treats up to 2150 (1 texture fetch) /
1200 (2 texture fetches and linear interpolation) sources, while the
CPU handles 1400 in the same amount of time. On average, the GPU
implementation was about 20% slower than the SSE implementation but
would become 50% faster if floating-point texture resampling was
supported in hardware."
If you read the above quote, please pay attention to the fact that the
GPU was an ancient GeForce FX 5950 Ultra, circa 2003 !!
Imagine what we can achieve with super-duper-ultra-powerful GPUs that
are on our videocards??
And if that's not enough, imagine what we can do if we can tap into
the raw power of the GPUs, with assembly language?? The entire
soundcard industry would crash and burn overnite !!