Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux: TCMalloc does not release free memory when requested #8643

Closed
martyngigg opened this issue Aug 21, 2013 · 1 comment
Closed

Linux: TCMalloc does not release free memory when requested #8643

martyngigg opened this issue Aug 21, 2013 · 1 comment
Assignees
Labels
Framework Issues and pull requests related to components in the Framework High Priority An issue or pull request that if not addressed is severe enough to postponse a release.
Milestone

Comments

@martyngigg
Copy link
Member

There are calls to TCMalloc's ReleaseFreeMemory both before and after algorithm execution and also when calling FrameworkManager::clear.

It would appear that these calls do not always do what is expected. For example, the system test performance reports seem to suggest alot of memory loss in many tests:

https://builds.sns.gov/view/All/job/ornl_test_rhel6_develop/System_tests_performance/?

whereas the Windows servers do not show this:

https://builds.sns.gov/view/All/job/ornl_test_windows7_develop/System_tests_performance/?

Investigate what is happening here. The script below (data in systemtests/Data) should leave memory around when the clear should have freed it up:

#!python
import mantid
from mantid.kernel import MemoryStats
from mantid.simpleapi import *
mantid.api.FrameworkManager.clear()

## TEST ##
memory_before = MemoryStats().residentMem()/1024
wish_ws = Load(Filename='WISH00016748.raw',OutputWorkspace='wish_ws')
mantid.api.FrameworkManager.clear()

heldMemory = MemoryStats().residentMem()/1024 - memory_before

print "Memory held:",heldMemory
@martyngigg
Copy link
Member Author

This issue was originally trac ticket 7798

@martyngigg martyngigg added High Priority An issue or pull request that if not addressed is severe enough to postponse a release. Framework Issues and pull requests related to components in the Framework labels Jun 3, 2015
@martyngigg martyngigg self-assigned this Jun 3, 2015
@martyngigg martyngigg added this to the Release 3.3 milestone Jun 3, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Framework Issues and pull requests related to components in the Framework High Priority An issue or pull request that if not addressed is severe enough to postponse a release.
Projects
None yet
Development

No branches or pull requests

1 participant