SatCom-TELMA / MA-DRL_Routing_Simulator

Multi-Agent Deep Reinforcement Learning (MA-DRL) Routing Simulator for satellite networks
37 stars 7 forks source link

Out of memory #4

Closed Fwatermelon closed 1 day ago

Fwatermelon commented 1 week ago

I am experiencing an issue where my 64GB of RAM is completely used up when running 5 satellites. Could you please share your computer configuration? Additionally, do you have any recommendations on how to handle this memory issue? Thank you!

Fedeloz commented 6 days ago

Hi, I assume that you meant 5 Gateways here, instead of 5 satellites:

"when running 5 satellites"

Recomendations for reducing RAM usage:

  1. Decrease the traffic fraction. The traffic fraction can be changed in "inputRL.csv":

Locations,Constellation,**Fraction**,Test type,Test length Malaga,Kepler,**0.1**,Latency,1.00

  1. Import pre-trained networks and deactivate the exploration. This will make routing way more efficient.
  2. Deactivating the online phase is recommended too, but it should work with 64GB doing the mentioned above.

I have pushed a version that you should be able to run. In this version, the simulator is configured to run with 5 Gateways, 10% of the traffic, online phase, importing some pre-trained neural networks and no movement of the constellation during 2 seconds.

Try pulling the latest commit: 2d3f00c

And running: python SimulationRL.py

I usually use a supercomputer when I train the network with >5 Gateways (https://www.scbi.uma.es/web/es/inicio/), this process is very RAM hungry. The most consuming event is training from scratch with exploration.

PD: I try to optimize the RAM usage when not doing technical research or reading papers, but I am not a sw developer. I am open for any recommendations to optimize the RAM usage with Keras.