Skip to content

0.9.0

Compare
Choose a tag to compare
@koute koute released this 25 Jul 13:08
· 112 commits to master since this release

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 a NULL 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