Citect 2018 R2 multi page graphics limit

G'day,

I think we've found a limit with the Citect client process.  We have a number of clients, 2 of which exhibit issues displaying faceplates and other slow response problems.  These issues only surfaced when we updated from 2018 update 13 to 2018 R2 update 10.  The two clients that are exhibiting this issue both have 4xHD monitors plus 2x4K monitors, running the SA environment and runtime only client processes.

We traced the issue back to the CPU core that runs the Citect32 process reaching 100% utilisation.  The processors are quad core (non hyperthreading) Xeon 2.9GHz units.  We are going to look at replacing them with Xeon quad core hyperthreading 4.5GHz equivalents.  We haven't observed any other hardware limitations

Some of the symptoms we seem to be experiencing are:

  • Faceplates slow to load
  • Faceplates don't load
  • Alarms stop displaying (though this may be a different issue as it appears to occur on lightly loaded clients)
  • Alarm filtering resets to unfiltered periodically

For the end users - has anyone else come across these issues?  Has upgrading processor to one with a higher clock speed helped?

For the developers - is there anything in the works to split the Citect client process into a single process per monitor such that we can utilise the additional cores that modern PCs come with?  Is there a supported method to enable Windows to split the Client process across multiple cores?

Cheers, Owen

  • We've had a lot of issues with updates destroying Citect 2018R2.
    Try a lower update? Maybe 5 or 0!

    Default login on the clients stops working. Which messes up everything.
    Alarms don't display or filter by area.
    Site setup is two servers plus a dozen or so clients.
    Servers seem to run with no issues - but the clients become a mess.

    Case is still at support - but no resolution after many months.
  • I just wanted to make sure you had set the CPU affinity to <All CPUs> in the Computer Setup Wizard.

  • G'day, yes, the default CPU affinity of all CPUs is set on all clients both in the profile and the config ini. The client process is still only a single process, so no quantity of available cores is going to help unless there is a method external to Citect that can share that process across multiple cores, as Windows handles individual processes with a single core. The server processes were split out many years ago due to the limitations running on a single core has, however with the SA system the client process's resource requirements have exponentially grown to the point where a single core struggles with large quantities of high resolution pages.
  • This sounds similar to our issues. Except we get random stoppages of the primary alarm server, and the OFS OPC doesn't like us either.

    I think that the focus needs to be put into getting the documentation up to date and fixing reliability issues before adding more 'features'. I also think that the development team need to set up a large system similar to what would be used in a large operation and really try to find the limits of their software, as it always comes back that it works well in their cut down, one PLC connected, single HD screen test environment.
  • Yes, upgrading to higher clock speeds is currently the best way to resolve Citect CPU usage issues.

    A good way is to search on the PassMark website (or similar) for a suitable server CPU with the highest single thread performance.

    For the Intel Xeon range, good examples are:
    - Xeon W-1290P (10 cores / 20 threads / 3.7 - 5.3 GHz)
    - Xeon W-1290 (10 cores / 20 threads / 3.2 - 5.2 GHz)
    - Xeon W-1270P (8 cores / 16 threads / 3.8 - 5.1 GHz)
    - Xeon E-2278G (8 cores / 16 threads / 3.4 - 5.0 GHz)

    Or you could consider using workstation PCs as your Client machines. You can then look at desktop CPU's which possibly have higher performance, but less CPU cores.

    More CPU cores or threads will have less impact than clock speed, unfortunately, until Citect becomes a true multi-threaded application.

    Regards, 

    Patrick

  • Just to be fair to the devs and/or QA team: they did have such a large testing system a few years ago and assisted me with performance issues in Citect 7.30 / 7.40 and V2015 connected to 10 PLCs (simulated, or real) using OFS. Not sure if they have a more current system now though.
  • Yeah figured that. We are looking at the Xeon W-2125 and W-2225 options to gain more speed. To go to a consumer processor we would need to replace the entire PC, which becomes a capital cost rather than operational cost, and will likely not be approved in this calendar year, and even less likely be approved next calendar year. The options we do have give us an additional 50% clock speed though so should alleviate this (and hopefully other) issues.
  • The two clients that are exhibiting this issue both have 4xHD monitors plus 2x4K monitors, running the SA environment and runtime only client processes

    Cicode is probably the main bottleneck.
    Setting the CPU affinity to all will not really help, since once started Citect runs on 1 core, so speed might help.

    To tune down the cicode execution there are 2 parameters which might help:

    - Increase [Code]Threads

    - [Page]Scantime by default this is 250ms, this defines the subscription (update) rate for tags, but also regulates how often the cicode is called on a page.
    Setting this to a higher value will reduce the CPU load (, but also lower the update rate for tags).

  • Hi Owen (OwenMyhill9662)

    Might not be related but from this post it seems some Alarm Functionality is broken and you have one of the updates that have been identified as having this problem.  see 

    Hi everyone, It's with regret that I share that we have identified a regression in recent Citect SCADA Monthly Updates that can affect the operational view of Alarm information including Alarm Summary…

  • Hi Peter (PeterClemmett4858)

    Might be related to this

    Hi everyone, It's with regret that I share that we have identified a regression in recent Citect SCADA Monthly Updates that can affect the operational view of Alarm information including Alarm Summary…