Report memory use of SWIFT
Fixes #414 (closed)
Adds a simple mechanism for getting reports of the main memory use in SWIFT. When not chosen the calls become no-ops. Each report is formatted like:
[0002] [00107.8] :memuse: 0:parts engine.c:engine_exchange_strays:1806 2052274
Where :memuse:
is a parsing label for extracting the records, 0:parts
shows
that this is step 0 and a report of the memory used by parts, the next field
is where the report originates and the final number the number of KBs in use.
These can be processed to give sums of each report per step by the process_memuse.py
script.
Note that we report particle use, whether or not a reallocation has occurred during
rebuild/repartition steps and the special label :step
is used to report the
memory in use by the process (i.e. resident set size) so that the fractions are
clear and how much memory in actually used.
Changes to consider:
- write output to a file not stdout.