aflux / neutrino

A light, expandable and full featured image analysis tool for research
10 stars 1 forks source link

Bug? Memory swells upon repeated (overwriting) Wavelet/Inversion analyses #31

Open sfeister opened 10 years ago

sfeister commented 10 years ago

Hello again! I noticed today a possible memory growth issue with repeated operations in Neutrino. When doing a Wavelet or Abel inversion, Neutrino's memory usage increases slightly even when overwriting a previous analysis. To be clear, since one is in overwrite mode, the buffer list does not grow -- the number of total buffers before and after the operation is the same.

The memory growth seems to be worse for the Abel inversion than the Wavelet analysis. The effect can be seen by opening a memory monitor (such as "top" in Linux) while repeatedly doing an Abel inversion in overwrite-old-data mode. The effect can be seen outside of python scripting, which convinces me it is not a python issue.

It's not very noticeable on single operations, but it is noticeable when scripting, where after a few hundred rapid repetitions Neutrino can take up a whole computer's worth of memory. A workaround is to restart Neutrino after a certain number of operations, clearing the memory.

Scott

aflux commented 8 years ago

Dear Scott,

we changed things quite a bit, I'm re-testing this now.

This issue is now set for the final release of neutrino 2.0

A.

sfeister commented 8 years ago

Excellent! I'm excited to check out the new version. Here's an update on my end: After exploring the python scripting, I took the analysis a step further and extracted a few of your wavelet functions to create a basic Windows DLL called from LabVIEW. This enabled simple, real-time interferometric analysis of laser-produced expanding plasmas. I've credited this project in my dissertation. Thanks!