Tools for checking if algod has memory leaks.
Run a local private network of three nodes and two pingpongs.
Periodically sample pprof memory profiles.
Watch memory usage from ps
and write to a CSV file for each algod.
To start:
bash test/heapwatch/start.sh /tmp/todaysTest
To stop:
bash test/heapwatch/stop.sh /tmp/todaysTest
Results:
Snapshot usage plots and inter-snapshot delta plots.
ls /tmp/todaysTest/heaps/*.svg
The raw files for analysis with go tool pprof
ls /tmp/todaysTest/heaps/*.heap
CSV files of memory usage according to ps
:
ls /tmp/todaysTest/heaps/*.csv