Opens in a new tab

AES E-Library

← Back to search

Journal Article Open Access

Efficient Velvet-Noise Convolution in Multicore Processors

Authors: Belloch, Jose Antonio; Badia, Jose M.; Leon, German; Välimäki, Vesa

Journal of the Audio Engineering Society · Volume 72 · Issue 6 · pp. 383–393 · June 2024

Abstract

Velvet noise, a sparse pseudo-random signal, finds valuable applications in audio engineering, such as artificial reverberation, decorrelation filtering, and sound synthesis. These applications rely on convolution operations whose computational requirements depend on the length, sparsity, and bit resolution of the velvet-noise sequence used as filter coefficients. Given the inherent sparsity of velvet noise and its occasional restriction to a few distinct values, significant computational savings can be achieved by designing convolution algorithms that exploit these unique properties. This paper shows that an algorithm called the transposed double-vector filter is the most efficient way of convolving velvet noise with an audio signal. This method optimizes access patterns to take advantage of the processor’s fast caches. The sequential sparse algorithm is shown to be always faster than the dense one, and the speedup is linearly dependent on sparsity. The paper also explores the potential for further speedup on multicore platforms through parallelism and evaluate the impact of data encoding, including 16-bit and 32-bit integers and 32-bit floating-point representations. The results show that using the fastest implementation of a long velvet-noise filter, it is possible to process more than 40 channels of audio in real time using the quad-core processor of a modern system-on-chip.

Details

Publication
Journal of the Audio Engineering Society
Volume
72
Issue
6
Pages
383–393
Publication date
June 17, 2024
Affiliation
Department of Computer Science and Engineering, Universitat Jaume I, E-12071 Castellón de la Plana, Spain (See document for exact affiliation information.)
Type
Journal Article