An Efficient GPU-based Implementation of Recursive Linear Filters and Its Application to Realistic Real-Time Re-Synthesis for Interactive Virtual Worlds
Resumo
In this work, I present a new technique for implementing digital recursive linear filters using GPUs supporting real-time processing with 2 to 4× more coefficients than achieved by an equivalent implementation on CPUs, eliminating the need of CPU-based processing and improving performance by avoiding memory transfers. It consists of unrolling the filter equation and “trading” dependences until an expression containing available samples is obtained. Resulting convolutions are then computed using the FFT. For demonstration, an LPC filter is designed to synthesize sound for a scene parametrically (by object material and collision velocity and angle) and computed using the technique.
Referências
Gallo, E. and Tsingos, N. (2004). Efficient 3d audio processing with the gpu. electronic proceedings of the acm workshop on general purpose computing on graphics processors, pp. c-42.
García, G. (2002). Optimal filter partition for efficient convolution with short input/output delay. In Proceedings of the Audio Engineering Society, number 113.
Govindaraju, N. K. and Manocha, D. (2007). Cache-efficient numerical algorithms using graphics hardware. Parallel Computing, 33(10-11):663–684.
Harrington, J. and Cassidy, S. (1999). Techniques in Speech Acoustics, chapter 8, pages 211–238. Kluwer Academic Publishers.
Haykin, S. and Veen, B. V. (1998). Signals and Systems. John Wiley & Sons, New York, NY, USA.
Jedrzejewski, M. and Marasek, K. (2004). Computation of room acoustics using programmable video hardware. In International Conference on Computer Vision and Graphics ICCVG’2004.
Meyer, R. (1989). Error analysis and comparison of fft implementation structures. Acoustics, Speech, and Signal Processing, 1989. ICASSP-89., 1989 International Conference on, pages 888–891 vol.2.
Robelly, J., Cichon, G., Seidel, H., and Fettweis, G. (2004). Implementation of recursive digital filters into vector simd dsp architectures. IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), 5:165–168.
Sumanaweera, T. and Liu, D. (2005). Medical Image Reconstruction with the FFT. In GPU Gems 2, Matt Pharr (editor), pages 765–784. Addison Wesley.
Trebien, F. (2009). An efficient GPU-based implementation of recursive linear filters and its application to realistic real-time re-synthesis for interactive virtual worlds. Masters thesis, UFRGS, Porto Alegre, Brazil. [link].
Trebien, F. and Oliveira, M. M. (2008). ShaderX6: Advanced Rendering Techniques, chapter Real-Time Audio Processing on the GPU, pages 583–604. Charles River Media, Inc., Hingham, MA, USA, first edition.
Trebien, F. and Oliveira, M. M. (2009). Realistic real-time sound re-synthesis and processing for interactive virtualworlds. The Visual Computer, 25(5–7):469–477.
Zhang, Q., Ye, L., and Pan, Z. (2005). Physically-based sound synthesis on gpus. In Kishino, F., Kitamura, Y., Kato, H., and Nagata, N., editors, ICEC, volume 3711 of Lecture Notes in Computer Science, pages 328–333. Springer.