PDCON:Conference/GPU audio signals processing in Pd, and PDCUDA, an implementation with the CUDA runtime API
Graphics Processing Unit audio signals processing in Pure Data, and PdCUDA an implementation with the CUDACompute Unified Device Architecture runtime API[[wikipedia:Application Programming Interface]]
Author: Charles Henry
Download full paper: Media:Graphics Processing Unit Audio Signals Processing in Pd and PdCUDA an Implementation with the CUDA Runtime API.pdf
An implementation named PdCUDA is presented for use of graphics processing unit (GPUGraphics Processing Unit, the main →IC on a graphics adapter (Grafikkarte)) general programming capability for audio signals processing with Pure Data and the CUDACompute Unified Device Architecture runtime application programmers interface (API[[wikipedia:Application Programming Interface]]). The goal of PdCUDA is to make uniformly efficient the development of CUDACompute Unified Device Architecture based externals and their usage in Pd[[Pure Data]] a dataflow programming environment. In PDCUDA, the Pd[[Pure Data]] a dataflow programming environment source code is patched to enable the creation of CUDACompute Unified Device Architecture digital signals processing (DSPDigital Signal Processing – Digitale Signalverarbeitung) contexts, in which signal memory is allocated in GPUGraphics Processing Unit, the main →IC on a graphics adapter (Grafikkarte) memory and DSPDigital Signal Processing – Digitale Signalverarbeitung operations are performed by the GPUGraphics Processing Unit, the main →IC on a graphics adapter (Grafikkarte). This capability is made accessible to users in Pd[[Pure Data]] a dataflow programming environment's graphical patching environment by modifying the canvas class. PdCUDA adds a new canvas creation method for the symbol “cucanvas” which identifies that the underlying DSPDigital Signal Processing – Digitale Signalverarbeitung context for that canvas uses CUDACompute Unified Device Architecture. Memory transfer between host and GPUGraphics Processing Unit, the main →IC on a graphics adapter (Grafikkarte) explicitly occurs between signals in a non-root canvas and its parent canvas. The Pd[[Pure Data]] a dataflow programming environment source code for DSPDigital Signal Processing – Digitale Signalverarbeitung scheduling is reviewed for existing methods of optimizing memory access and avoiding latency. PdCUDA provides shared/static libraries of functions and a header file comprising an API[[wikipedia:Application Programming Interface]] for externals developers.
4th international Pure Data Convention 2011 Weimar ~ Berlin


