crcragun
2008-06-26 18:10:06 UTC
LabView 7.1.1 and 8.5.
My application requires that a XY Graph that allows the Operator to select which of many channels are plotted on the X and Y axis. I have implemented a 10,000 point circular buffer that updates every 200ms. The problem occurs after testing is complete and the buffer over time becomes filled with noise for each of the two selected channels. The result is a tight blob of 10,000 points all connected with lines on the XY Graph. Since the auto-scale is enabled, the size of the blob of data is maximized to fill the XY Graph. In addition, the operator is in control of when the XY Plot is enabled/disabled. The result of this scenario is excessive CPU usage causing the whole computer to be bogged down and nearly unresponsive to Operator selections.
The attached VI is a very simple (reduced) example of what I am experiencing.
Through some troubleshooting, I have learned the following.
The point style, interpolation, and line thickness all directly effect CPU usage. A round point requires more CPU usage than does a square point. A large dot takes more CPU usage than a small dot. A thick line takes more CPU usage than a thin or no line.
The summary of what I observe is that the more pixels that are required to be represent the graph, the higher the CPU usage.
Does anyone have any ideas of how to further reduce the CPU usage either by other XY Graph settings or by some method of intelligently selecting which points to plot?
Thank you.
CUP Hog - XY Plot.vi:
http://forums.ni.com/attachments/ni/170/335354/1/CUP Hog - XY Plot.vi
My application requires that a XY Graph that allows the Operator to select which of many channels are plotted on the X and Y axis. I have implemented a 10,000 point circular buffer that updates every 200ms. The problem occurs after testing is complete and the buffer over time becomes filled with noise for each of the two selected channels. The result is a tight blob of 10,000 points all connected with lines on the XY Graph. Since the auto-scale is enabled, the size of the blob of data is maximized to fill the XY Graph. In addition, the operator is in control of when the XY Plot is enabled/disabled. The result of this scenario is excessive CPU usage causing the whole computer to be bogged down and nearly unresponsive to Operator selections.
The attached VI is a very simple (reduced) example of what I am experiencing.
Through some troubleshooting, I have learned the following.
The point style, interpolation, and line thickness all directly effect CPU usage. A round point requires more CPU usage than does a square point. A large dot takes more CPU usage than a small dot. A thick line takes more CPU usage than a thin or no line.
The summary of what I observe is that the more pixels that are required to be represent the graph, the higher the CPU usage.
Does anyone have any ideas of how to further reduce the CPU usage either by other XY Graph settings or by some method of intelligently selecting which points to plot?
Thank you.
CUP Hog - XY Plot.vi:
http://forums.ni.com/attachments/ni/170/335354/1/CUP Hog - XY Plot.vi