[Asterisk-Dev] GPU backending for codecs

Richard Scobie r.scobie at clear.net.nz
Fri Jan 21 00:20:31 MST 2005



Steve Kann wrote:

> One characteristic of what we're trying to do here is that, for 
> translators, we're performing lots of operations (encode/decode) on very 
> small data sets;  So, in most cases, the encode operation might be:
> 
> 1) copy 20ms of PCM audio to GPU-accessible memory (unless it can access 
> main memory?)
> 2) Call the GPU routines.
> 3) The GPU does the encoding.
> 4) Wait for the GPU to complete.
> 5) copy back the encoded 20ms data.

5) could well be the killer here.

I am involved in film/post production and was following a promising 
project that aimed to use GPUs for rendering 3D animation, which is 
largely floating point - something GPUs excel at.

Things finally ground to a halt when it appeared that the 
driver/hardware was very poorly optimised for returning the result back 
to main memory. Frames were returned an order of magnitude or more 
slower than they were able to be displayed on a monitor.

Admittedly this was a). some years ago and b). the data sets here are 
much smaller, but latencies could be significant.

Were this not the case, I suspect GPU's would make a powerful floating 
point echo canceller.

Regards,

Richard



More information about the asterisk-dev mailing list