@Dietz said:
Welcome @Sasha T, great to see you here! Thanks a lot for chiming in.
@Sasha-T said:
*The 78 instruments 12ch Dolby Atmos configuration takes about 7.1GB in our reference audio project, so this is how I came up with the numbers above.
Maybe I'm missing some basic facts - but wouldn't this number depend mainly on the length of the IR ...?
Kind regards,
Hey Dietz,
Yes, it is, if you just run small and/or stereo projects.
For multichannel projects or large stereo projects the factor of total channel quantity comes into play. It depends on how many instruments or instruments / channels will be initialized. The IR length gives you some X memory utilization, but the way you scale it is by N channels multiplied 2 convolutions per channel (so for 7.1.4 Dolby Atmos, one instrument can give you X of IR length multiplied 12 multiplied 2 of the memory usage),
so imagine you have 4MB of memory utilized for the object (not just for the IR itself but the entity that has everything stored on the GPU including the IR data) per channel for the given IR length, for stereo, it goes 4x2x2 = 16 channel convolutions (64MB) in total, for 12ch (Dolby Atmos 7.1.4) it goes 4x12x2 = 96 channel convolutions (almost 400MB). For large orchestras where you typically have 80-100 (let's say 100) instruments involved, to process Dolby Atmos 7.1.4 it might take 100x12x2 = 2400 convolutions to offload (which will easily consume almost 10GB). So, again, 0.064GB stereo, a few instruments => 0.4GB 12-channel, a few instruments => 10GB for large 12-channel orchestra when the orchestra grows to a large number of channels. If you change the IR length from 2s to 7s, it may be multiplied by 7s/2s factor (or less, since we store not just IRs but lots of other data), so it will be something like 0.2GB stereo, a few instruments => 1.2GB 12-channel, a few instruments => 20GB or even 30GB for large 12-channel orchestra.
So above is just another perspective on how memory usage depends not just on the IR length but also on the channel configuration, and it's more important for large orchestra use cases.