Viewer Memory Manager
Summary
Currently the Second Life Viewer uses default memory allocators on OSX and Linux, and SmartHeap on Windows. None of these solutions provide run time memory profiling. When last investigated, Windows saw approximately a 15% overall framerate improvement when using SmartHeap. We need to find a cross platform solution that preserves as much of this performance optimization as possible while providing hooks for run time memory profiling.
Objectives
- Replace SmartHeap on Windows with a memory allocation library that is cross-platform and open source
- It needs to allow us to track memory allocations run time. This could be a command line option if there is a performance overhead, but the overhead needs to be low enough to continue to run real time.
- Performance must remain comparable to SmartHeap on Windows
- The ability to dump a detailed memory profile would enable residents to and submit memory leak / bloat information to Linden Lab and the OS community