FieldPoint Family

cancel
Showing results for 
Search instead for 
Did you mean: 

Increasing CPU time, memory not increasing, FP-RTD-122 locks up.

I have an application which uses Fieldpoint IO. When I run this application it starts to use increasingly more CPU time. After a while (few hours) it reaches 100% and after that point the FP-RTD-122 slows down until it finally locks up (6 hours after startpoint) without warning. But the rest of the IO and the application keep on functioning in the normal way.
The strange thing is that there is no significant memory increase, and there is no swapping activity, because there is no harddisk activity at this point. The PC has 512 MB RAM and it uses 133 MB after the application was started. At the point where the RTD-module is failing it also uses 133 MB.
The CPU time increases linear with time from the moment of starting up the application and seems to be independent of user interference.

This is the configuration I use:
FP-1000 (RS232)
FP-AO-210
FP-AIO-610
FP-AI-110
FP-RTD-122
FP-RLY-422
FP-RLY-420

In the application there is a 300 msec cycle for read/write all of the IO. I know that the FP-RTD-122 updates only every 1.08 seconds, but in my opinion this should not be a problem, or is it?
Does anyone have suggestions?
0 Kudos
Message 1 of 4
(3,709 Views)
In addition to my first message:

I have pinpointed the problem to the execution times of the FP read/write subVI's. I have no explanation for the fact that these VI's consume more and more time the longer the program runs. In the attachment there are two screenshots of profiles (01 and 02) which are taken on an interval of about 10 minutes.
0 Kudos
Message 2 of 4
(3,696 Views)
Here's the attachment....
0 Kudos
Message 3 of 4
(3,693 Views)
The conclusion about the FP read/write blocks in my earlier message was not correct, I misinterpreted the profile data.

Because I could not conclude anything after analyzing the profile data, I took a different approach. I have cut down the program until the CPU time was not increasing anymore.
After having found which while loop caused the CPU load to increase, I cut out only this loop. Then I tested the program in that state and there was no increase of CPU load to be measured for half an hour.
Then I have put in the while loop again. It was a loop in which I determined the state of a few buttons and the fill color of a Thermometer. So I cut out every link (read and write) to attributes in that loop and ran the program again. There was no increasing load!!!
So I concluded that it had something to do with the attribute reading/writing. To see what happened I put the loop as a stand-alone in a new VI and ran it. No increasing load for over an hour!
Now I am puzzled; How can it be that a while loop causes my program to get increasing CPU load, but not as a stand-alone? I have already checked if I was writing to the same attribute in different places, that was not the case.
0 Kudos
Message 4 of 4
(3,682 Views)