Revisiting Implicit Finite Difference Schemes for 3-D Room Acoustics Simulations on GPU

This is the accompanying website for the DAFx paper entitled as above. Below are sound examples for comparisons between the implicit and explicit finite difference (FD) schemes. Download the paper here.

Details

Impulse response were calculated for a 42m x 5m x 5m box-shaped room with the listener and source positions centered in the room and a distance of 40m between them. The speed of sound is c=340m/s. The walls were made slightly absorbing (specific acoustic admittance γ=0.5, reflection coefficient R=2/3) and very absorptive (γ=0.9, R=0.05), and a 0.5 second impulse response was retained.

The FD schemes uses a 19-point isotropic discrete Laplacian (α₁=1/3, α₂=2/3). The implicit schemes use six Jacobi iterations per time-step (M=6). All calculations were carried out in single precision using an Nvidia K40 GPU device. The Courant number was set just below the stability limit (μ=1e-4) for each scheme.

The sample rates (time-steps) were set such that the maximum absolute dispersion error at 4kHz was between 0.5% and 5%, according to a von Neumann analysis of the dispersion error for each scheme, as per the paper.

Sound examples

The IRs were convolved with the following 4kHz bandlimited speech sample (8 kHz sample rate):

Sound examples are given for dispersion error threshold, using the explicit (β=0) and implicit schemes (β>0, M=6), as well as a table summarising the computation times in single-precision.

Max 0.5% dispersion error :

β=0, R=0.5: R=0.05:

β=1/32, R=0.5: R=0.05:

βgrid sizememory usedsample rateruntime on K40
0 4589x553x553 10.46 GB 42830 Hz 5430 s
1/32 2271x277x277 2.60 GB 23180 Hz 2230 s


Max 1% dispersion error:

β=0, R=0.5: R=0.05:

β=1/32, R=0.5: R=0.05:

β=0.04660, R=0.5: R=0.05:

βgrid sizememory usedsample rateruntime
0 3334x404x404 4.05 GB 31100 Hz 1531 s
1/32 1946x238x238 1.64 GB 19850 Hz 1212 s
0.0466 1531x189x189 0.81 GB 16430 Hz 497 s


Max 2% dispersion error:

β=0, R=0.5: R=0.05:

β=1/32, R=0.5: R=0.05:

β=0.04660, R=0.5: R=0.05:

βgrid sizememory usedsample rateruntime
0 2451x298x298 1.62 GB 22840 Hz 446 s
1/32 1673x206x206 1.06 GB 17060 Hz 674 s
0.0466 1429x177x177 0.67 GB 15330 Hz 383 s


Above a 2% dispersion error threshold, the implicit schemes are not expected to be advantageous in terms of runtimes. However, phase artefacts due to numerical dispersion may become audible above a 2% dispersion error threshold.

Max 4% dispersion error:

β=0, R=0.5: R=0.05:

β=1/32, R=0.5: R=0.05:

β=0.04660, R=0.5: R=0.05:

βgrid sizememory usedsample rateruntime
0 1863x228x228 0.72 GB 17346 Hz 151 s
1/32 1460x180x180 0.70 GB 14870 Hz 390 s
0.0466 1324x164x164 0.53 GB 14194 Hz 283 s


Max 5% dispersion error:

β=0, R=0.5: R=0.05:

β=1/32, R=0.5: R=0.05:

β=0.04660, R=0.5: R=0.05:

βgrid sizememory usedsample rateruntime
0 1722x212x212 0.58 GB 16032 Hz 111 s
1/32 1403x174x174 0.63 GB 14291 Hz 337 s
0.0466 1292x160x160 0.49 GB 13855 Hz 257 s


References

  1. B. Hamilton, S. Bilbao, and C.J. Webb. Revisiting Implicit Finite Difference Schemes for 3-D Room Acoustics Simulations on GPU. Proceedings of the International Conference on Digital Audio Effects (DAFx), Erlangen, Germany, 2014.
Last updated 09/07/2014.