Fix memory leak by deallocating S_X_SX comms data in fmmi() - #473
Merged
Merged
Conversation
davidbowler
approved these changes
Aug 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This fix adds the missing call to deallocate S_X_SX's comms data in fmmi(). Without it, that comms structure is orphaned every step, and used memory grows linearly with simulation time in MD as well as geometry-optimisation runs.
The memory leak reported in #471 is confirmed suppressed on two different systems, and with different numbers of processes.
Checks with SZP, DZP and TZTP also show similar original memory leak and its suppression by the present fix.
The fix is confirmed to have no impact on the simulation results.