Audiokinetic Wwise Knowledge Base

Should I be concerned about memory fragmentation when using Wwise?

The sound engine basically uses 2 distinct pools, one for the Wwise sound structures' metadata (Default pool), which consist of relatively small objects, and for the audio pipelines (Lower Engine Default pool), which are made of bigger blocks that all get freed when the audio calms down.

As for audio data stored in banks, it is copied in a separate pool for each LoadBank() calls, or in a user-defined pool, giving you great control on memory management of audio data.

The memory allocator used by the Wwise sound engine is extremely efficient in regard to fragmentation. Normally, memory usage should not build up significantly due to fragmentation. However, the Lower Engine Default pool may suffer from such fragmentation when it doesn't have enough headroom above its typical usage: some buffers in this pool may be very big, like reverbs with large decay times. Obviously, a big delay line needs to be allocated in one contiguous chunk.

Please read http://kb.gowwise.com/questions/152/Determining+an+Appropriate+Size+for+Your+Memory+Pools for tips on determining appropriate sizes for the memory pools.



Article Details

Last Updated
22nd o February, 2010

Would you like to...

Print this page Print this page

Email this page Email this page

Post a comment Post a comment

Subscribe me

Add to favorites Add to favorites

Remove Highlighting Remove Highlighting

Edit this Article

Quick Edit

Export to PDF

User Opinions (0 votes)

No users have voted.

How would you rate this answer?



Thank you for rating this answer.

Related Articles

No related articles were found.

Attachments

No attachments were found.

Continue