Personal tools
You are here: Home Forum Use High RAM usage when several TUI are run in parallel

High RAM usage when several TUI are run in parallel

Up to Use

High RAM usage when several TUI are run in parallel

Posted by benoit paillard at March 03. 2017

Hi all,

I'm running systematic optimizations, for which sometimes up to 32 Salome TUI sessions run at the same time on one server with 32 cores. I wanted to report that the RAM goes through the roof in this case, with up to 100 Go of ram used, almost exclusively by something called SMDS_MemoryLimit (sic).

Any idea on how to solve that ? This prevent me to go further, even though hyperthreading could be activated.

 

Thanks all !

Benoit

Re: High RAM usage when several TUI are run in parallel

Posted by SMESH expert at March 03. 2017

Hello Benoit

SMDS_MemoryLimit is a program which is used to find out how much memory can be allocated.

To solve the problem find SMDS_MemoryLimit within the SALOME installation and rename it.

Best regards

Edward

Re: High RAM usage when several TUI are run in parallel

Posted by benoit paillard at March 04. 2017

Haha that's a good one, working like a charm !

Thank you for your help Edward.

Re: High RAM usage when several TUI are run in parallel

Posted by benoit paillard at March 04. 2017

Ok if I may add one more issue in the same context, after a couple hundred runs I get :

"Can't find a free port to launch omniNames
Try to kill the running servers and then launch SALOME again."

As similar problem was solved earlier by doing rm ~/salome/appli_V7_8_0/USERS/.omniORB_*, as mentioned on this forum. It is know a part of my script at the very beginning. But I get it anyway after a while.

Any help appreciated !

Cheers.

Benoit

Re: High RAM usage when several TUI are run in parallel

Posted by benoit paillard at March 05. 2017

Hi all,

I ended up modifying PortManager.py, by doing the following :

port = 2810
      while __isPortUsed(port, busy_ports):
        if port == 2810+10000:# ORIGINAL : if port == 2810+100:
          msg  = "\n"
          msg += "Can't find a free port to launch omniNames\n"
          msg += "Try to kill the running servers and then launch SALOME again.\n"
          raise RuntimeError, msg

I have strictly no idea what this code does though, so I'm keen to being enlightened ! Thanks all..

Re: High RAM usage when several TUI are run in parallel

Posted by Saint Michael at March 06. 2017

Hi Benoit

May be a reason of this problem is that you don't kill Salome, so that you have many running Salome's. Check how many SALOME_* processes are running.

St.Michael

Re: High RAM usage when several TUI are run in parallel

Posted by benoit paillard at March 07. 2017

I do not think this is a problem, since I'm using this clean kill at the end of every salome run :

from killSalomeWithPort import killMyPort
killMyPort(os.getenv('NSPORT'))

and even at the beginning of the script :

killall SALOME_ConnectionManagerServer SALOME_LauncherServer SALOME_Registry_Server SALOME_ModuleCatalog_Server SALOME_Container SALOMEDS_Server omniNames SMDS_MemoryLimit

Powered by Ploneboard
Document Actions