main loop: add a "log_tracemalloc" plugin to track memory usage #7046
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
(low priority)
I've been using the
tracemallocmodule (stdlib) a lot in recent memory investigations.This is how I spotted the leak in: #6985
It can be very useful in pinpointing memory changes in situations where the memory is allocated to the callstack rather than being attached to an object. For example, tracemalloc will spot memory accumulated by
lru_cache, but this memory isn't associated with theSchedulerobject so won't show in pympler plots of Scheduler attributes.Took my script and dumped it into a main loop plugin. Like the other main loop plugins, this is not imported or run unless requested.
Check List
CONTRIBUTING.mdand added my name as a Code Contributor.setup.cfg(andconda-environment.ymlif present).?.?.xbranch.