ni.com is currently undergoing scheduled maintenance.

Some services may be unavailable at this time. Please contact us for help or try again later.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

CPU usage

Hi forum,

 

i again need your help. I build an application on my I7 computer its running fine now i created an .exe on another pc (intel atom) and the CPU usage is very high ( around 80%). The application is not running smoothly as it should. 
I figured out which vi it is see attachment. I am using multiple buffer for each channel with around 100000samples the vi calculates the THD and RMS values builds continuously the average and write the average every second to a tdms file.  

Would be great if someone can give me an advice.

Thanks a lot 
Martin

0 Kudos
Message 1 of 4
(2,906 Views)

I do not see why you use two timers. Is each  of them set to "one second"? Or, do you count the means and thresholds any time data arrives, but write / flush them only once in a second?

 

I would avoid data multiplication before the structure. Each branch of a wire means a copy of the data. So, if you do it too often, you make unnecessary copies before it is really needed. But this is probably a minor issue. I am looking forward to other answers.

0 Kudos
Message 2 of 4
(2,857 Views)

Hi 

the first timer is just waiting once 1s until the buffer gets full, then the callculation makes an average of 100ks and every second i wirte the average to file.

Thanks

Martin

 

0 Kudos
Message 3 of 4
(2,852 Views)

Thanks for the explanation. But I still do not see a point to use the second (inner) timer. You say  that you collect the data for a full second, and then execute (calculate average and threshold) and then -- because a full second ran out during the data collection -- write the data.

0 Kudos
Message 4 of 4
(2,845 Views)