Applies To:
  • CitectSCADA 5.50, 5.50 Service Pack A, 5.50 Service Pack B, 5.50 Service Pack C, 6.00, 6.00 Service Pack A
  • CitectHMI 5.50, 5.50 Service Pack A, 5.50 Service Pack B, 5.50 Service Pack C, 6.00, 6.00 Service Pack A

Summary:
I have upgraded to CitectSCADA version 6.00 and have used the Process Analyst to view my trends. I can see that when I have gaps in my trend display on a trend server, that they are being filled from the other server. Sometimes this seems to tale a long time to complete. have you any recommendations on improving performance?
 

Solution:
There are several parameters that affect the performance of trending, from collection, display, writing to file and gap filling. In version 6 gap filling has been improved so that trend servers can fill gaps from the last shutdown and for runtime gaps. In service pack A, the performance of the gap filling will be significantly improved again by a factor of around 1000 percent. The key parameters that can directly affect the gap filling of data in the trend files are as follows:

[Trend]
GapFillTime - default is 10000 ms
GapFillSamples - default is -1
MaxBackFillsAtOnce - default is 5 trends
MaxRdnSamples - default is 500 samples requested from a trend at the same time
MaxRequestLength - default is 4000 concurrent trend sample requests

With Service Pack A, you should not need to adjust these parameters. Regardless of the version used, if regular gaps are occurring, you may want to look at communications problems, performance mismatch and the trend archiving performance first. This is explained in CitectSCADA Knowledge base article Q3832.

Also In version 6, protection has been added to stop redundancy requests swamping the trend system with too much data to write to file. Requests are halted if there is too much of a backlog. So you can stop the requests from being halted as often by tuning these parameters to write to file faster.

Having addressed the above first and if you are still seeing gaps in trends you should next consider whether increasing the GapFillTime (or GapFillSamples) parameters is suitable to your requirements.

When satisfied, but gap filling performance is still very slow the other parameters can then be tuned.

MaxBackFillsAtOnce can be increased but you should observe CPU usage increases to ensure they are manageable. You can observe this after a restart of a redundant server. Tune this in conjunction with increasing the MaxRdnSamples parameter. Try doubling theses from 5 to 10 and from 500 to 1000 respectively. Iterate the doubling as necessary by observing the following:

In the CitectSCADA Kernel on the trend server, in the Main window type "Page Queue" then on this page use the Page Down key until you see the Trn.Rdn.GapFillDelayQ. Time how long is required for the queue to clear. If you know how long your trend gaps were (eg after a shutdown and restart) this will then give you a benchmark of performance. You can then vary the parameters if you want to improve performance.

Notes:
You should watch that CPU usage is not adversely affected.
If you increase MaxRdnSamples above 4000 then you will need to also increase MaxRequestLength as this will limit the samples to 4000.
If you are using fast trends (samples rates less than one second) then you should observe large gap fill performance increases by following these suggestions.
If you modify these trend parameters agressively to improve trend backfill performance, you may notice delays in refreshing your trend display when changing the trend time base on a trend page.  

Keywords:
 

Attachments