LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Memory Monitor

I am trying to instrument a large application to monitor for possible memory leaks in the current or future versions.

I am using a similar approach to ...\Labview 8.2\Examples\memmon.llb\Memory Monitor.vi.  One problem is that the VI Server property VI.Metric.DataSize does not seem to be available if the VI is running (or waiting to run).  The property node returns error 1000, VI not is a .  Is there any other way to programmatically get detailed memory statistics for each VI?  Why is this information available in the profiler and in the VI Properties->Memory Usage window but not in a property node?

It  would also be great to get a list of all active queues and notifiers on the system, but I suspect this is not available anywhere.  If anyone has good ideas about this, it would be great.

Thanks,
Jason Dunham
0 Kudos
Message 1 of 4
(3,144 Views)
Jason,
 
You could do this using the Profile Performance and Memory window (found in Tools->Profile->Performance and Memory).  However, like highlighting execution, be aware that this will significantly slow down your program.
 
Regards,
 
Craig D
Applications Engineer
National Instruments
0 Kudos
Message 2 of 4
(3,108 Views)
Hi Craig:  Thanks for the suggestion, but I am trying to find something programmatic, so that it will log data from built applications over the long term.

I don't suppose you can find out why VI.Metrics.Data always returns zero when the VI is reserved for execution or running?

Thanks,
Jason
0 Kudos
Message 3 of 4
(3,091 Views)
Jason,
 
Unfortunately, I am not aware of a way to do this programmatically.  As for the VI property Metrics:Total Data Size, according to the LabVIEW help, you cannot read this property if the VI is running.  Please see this post for the reasoning behind this.
 
Regards,
 
Craig D
Applications Engineer
National Instruments
0 Kudos
Message 4 of 4
(3,066 Views)