07-07-2017 08:05 AM
I have a project with maybe 50 VIs. Every now and again the main app will freeze (meaning that something somewhere has ran away or something).
My question is... How can I find out which VI is sucking up all of the processor? My guess is that there is a for loop free running somewhere but I don't know where.
LabVIEW 2015.
07-07-2017 10:00 AM
Hi WaneS1324,
I would recommend checking out this tool for evaluating VI performance. With that many subVI's, this problem may be difficult to track down, but the profile performance and memory window is a great place to start. You also may want to use highlight execution to find any loops that are running excessively, although this becomes tedious and time-consuming very quickly as your program grows larger. Let me know if these tools are able to help you diagnose your issue!
Best,
Duncan Waldrop
07-07-2017 10:10 AM - edited 07-07-2017 10:12 AM
If the main app is a state machine, you can put some simple debugging stuff right before the case structure that logs the states as they occur. At least you could follow the bread crumbs and figure out which state is hanging. Maybe have one before that says "Entering xyz state" and one after that says "Exiting xyz state".
This should probably be a regular feature anyway.
07-07-2017 12:57 PM
Thanks for the replies.
The main app is a state machine. I did what you suggested in a previous project. I don't know why it escaped me this time.
07-07-2017 02:38 PM
If it can knock it down from 50 possibilities to maybe 5-10, I'd say that's a win. 🙂