Skip to content

Add the possibility to write a file containing the PIDs of all children (each...

Sacha Duverger requested to merge add/py_mem_monitor into custom_cbgeo

This MR includes several changes:

  • adds log_memory_usage and log_memory_step as material parameter to the PythonModel material. They allow the user to monitor the RAM usage of each RVE, logging the "VmRSS" field of the /proc/$rve_pid/status file into the following CSV file: simulation_directory/rve_data/RVE_${MP_ID}/memory_usage_bytes.csv (the same directory where PyCBG saves the VTK files of each RVE).
  • simplifies the Python coupling, by avoiding to fully recreate a material instance for each RVE. Basically, now the script that does the Python coupling has its own namespace (pymat) and doesn't depend on CB-Geo MPM's Material class. It is still called from a second executable suffixed "_python", but now the latter does not depend on whether the simulation is 2D or 3D. The only way to use a Python model now is to use the PythonModel class.
  • adds clang compilation option, with the address sanitizer flag. The 3 possible values for CMAKE_BUILD_TYPE are now: Release, Debug and ASan.
  • updates dependency spdlog, whose older version lead to many warnings during compilation.

Merge request reports