Memory Management

In contrast to typical memory managers, the 3DSpace's memory manager is suited for long running server processes.

See Also
Generating Stack Traces
Memory Troubleshooting Procedures
Studio Customization Toolkit Origin Tracing

The system allocates memory in multiples of 16 bytes. Instead of freeing memory blocks under 512 bytes, the system maintains its own free list. This free list is subdivided into buckets, for holding blocks of the same size. The maximum amount of memory that this list can hold is controlled by the parameter MX_MEMORY_KEEP_LIMIT, which has a default value of 256m. This algorithm ensures fast allocation and prevents memory fragmentation.

Furthermore, 3DSpace's memory manager contains the following trace parameters, which can be used to resolve memory related problems:

MX_MEMORY_TRACE
MX_VERBOSE_MEMORY_TRACE

For more information on the above parameters, see Memory Manager Configuration Settings.