Opens in a new tab

AES E-Library

← Back to search

Engineering Brief

A Comparison of Highly Configurable CPU- and GPU-Based Convolution Engines

Authors: Schoeffler, Michael; Hess, Wolfgang

AES Convention 133 · Paper 60 · October 2012

Abstract

In this work the performance of real-time audio signal processing convolution engines is evaluated. A CPU-based implementation using the Integrated Performance Primitives Library and two GPU-based implementations using
CUDA and OpenCL are compared. The purpose of these convolution engines is auralization, e.g., the binaural rendering of virtual multichannel configurations. Any multichannel input and output configuration is supported, e.g., 22.2 to 5.1, 7.1 to 2.0, vice versa, etc. This ability results in a trade-off between configurability and performance. Using a 5.1-to-binaural setup with continuous filter changes due to simulated head-tracking, GPU processing is more efficient when 24 filters of more than 1.92 seconds duration each @ 48 kHz sampling rate are convolved. The GPU is capable of convolving longer filters in real-time than a CPU-based processing. By comparing both GPU-based implementations, negligible performance differences between OpenCL and CUDA were measured.

Details

Published in
AES Convention 133
AES Convention
133
Paper number
60
Publication date
October 6, 2012
Affiliation
International Audio Laboratories Erlangen; Fraunhofer Institute for Integrated Circuits IIS (See document for exact affiliation information.)
Type
Engineering Brief