0.9.0
Major changes:
- Deallocation backtraces are now gathered by default; you can use the
MEMORY_PROFILER_GRAB_BACKTRACES_ON_FREE
environment variable to turn this off - Deallocation backtraces are now shown in the GUI for each allocation
- Allocations can now be filtered according to where exactly they were deallocated
- Allocations can now be filtered according to whether the last allocation in their realloc chain was leaked or not
- Profiling of executables larger than 4GB is now supported
- Profiling of executables using unprefixed jemalloc is now supported
- New scripting APIs:
AllocationList::only_matching_deallocation_backtraces
AllocationList::only_not_matching_deallocation_backtraces
AllocationList::only_position_in_chain_at_least
AllocationList::only_position_in_chain_at_most
AllocationList::only_chain_leaked
- The
server
subcommand of the CLI should now use less memory when loading large data files - The behavior of
malloc_usable_size
when called with aNULL
argument now matches glibc - At minimum Rust 1.62 is now required to build the crates; older versions might still work, but will not be supported
- The way the profiler is initialized was reworked; this should increase compatibility and might fix some of the crashes seen when trying to profile certain programs