Fix memory leak in experience_collector
Figures in matplotlib accumulate forever even when not referenced.
Actually close them and clear their contents to fix the leak.
Change-Id: Ie566213d435b7bedaf2c65cc7d922fd2d2e00801
Signed-off-by: Austin Schuh <austin.linux@gmail.com>
diff --git a/frc971/control_loops/swerve/experience_collector.py b/frc971/control_loops/swerve/experience_collector.py
index 66b425f..b4c17fb 100644
--- a/frc971/control_loops/swerve/experience_collector.py
+++ b/frc971/control_loops/swerve/experience_collector.py
@@ -166,6 +166,12 @@
fig0.savefig(f'state_{experience_number}.svg')
fig1.savefig(f'steer_{experience_number}.svg')
+ # Free the memory associated with the figures.
+ fig0.clf()
+ fig1.clf()
+ pylab.close(fig0)
+ pylab.close(fig1)
+
def main(argv):
if FLAGS.outputdir: