← Back to team overview

yade-dev team mailing list archive

[Bug 1290194] Re: O.reset() does not free memory

 

I can confirm this bug.
Some time ago I wrote a (python) script which calls yade for performing a sphere drop with changing parameters. IN this script yade way invoked once and after a sphere drop was finished simulation was reset for the next parameter set.  It ended up in about 30.000 parameter combinations that were simulated. This took about 5 days and at the end 128 GB Ram plus the same for Swap file was used...

-- 
You received this bug notification because you are a member of Yade
developers, which is subscribed to Yade.
https://bugs.launchpad.net/bugs/1290194

Title:
  O.reset() does not free memory

Status in Yet Another Dynamic Engine:
  New

Bug description:
  O.reset() does not free the memory, i.e. if you run a series of
  simulations in a loop the memory usage is accumulating. Here is a
  script which reproduces the issue (it should affect all versions):

  # -*- coding: utf-8
  import subprocess

  numberTests = 10

  for z in range(numberTests):
  	
  	O.reset()
  	
  	O.bodies.append(pack.regularHexa(pack.inSphere((Vector3(0.0,0.0,0.0)),0.5),radius=0.01,gap=0))
  	print "number of bodies:", len(O.bodies)

  	cmd = "ps -o vsz -p `pgrep yade` | grep -v VSZ"
  	process = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
  	meminfo = process.communicate()[0].strip()
  	print "Yade memory usage: ", meminfo, "kB"
  	
  	cmd = "egrep 'MemFree' /proc/meminfo"
  	process = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
  	meminfo = process.communicate()[0]
  	print meminfo

  sys.exit(0)

To manage notifications about this bug go to:
https://bugs.launchpad.net/yade/+bug/1290194/+subscriptions


References