Transaction Groups and identifying bottleneck

I’m looking for some guidance on how to narrow in on the cause for Transaction Groups to regularly take much longer than normal to execute. Some details:

  • OPC data mode: Read. Timer values distributed at 204, 210, 214, 218 milliseconds
  • All transaction groups are Stored Procedure groups using Microsoft SQL Server
  • PLC is AllenBradley ControlLogix 1756-L83ES, MSG (Class 3) Utilization typically around 70%
  • Ignition v7.9.14, CPU utilization at 2 to 4%
  • There are 201 running Transaction Groups

I see 5 possible areas to go after:

  1. Detecting trigger
  2. Reading Input OPC items
  3. Executing SQL Stored Procedure
  4. Writing Output OPC items
  5. Gateway computer resources

A “normal” execution is about 400 ms in the PLC and Designer shows Last duration of around 0.18 seconds. Occasionally, I do see a longer Last duration in Designer, but usually it is long duration on the PLC, 2-6 seconds, and still shows as 0.18 seconds in Designer. That makes me suspect the trigger detection or threading on the Gateway.

Is it possible to turn on some additional logging to narrow in on the bottleneck?
Any other suggestions or areas to investigate?

Be aware that device utilization does not include OPC reads, whether from transaction groups or from scripted actions, nor any writes. Just subscribed values.

It is entirely possible that multiple transaction groups firing together are bogging down your already-busy Logix connection.

Thank you. Do you know of a way to get a metric on that of some kind?

Probably the best available would be to monitor your response times from that device utilization page. After that is wireshark. ):

Tech support finally came through with a setting change that looks like corrected this for us on June 3.
We increased the Max Pending Publish Requests OPC server setting from 2 to 20. OPC subscriptions were going to a status of Late when it was 2 and we have not seen that since bumping up to 20. There is probably an optimum setting between 2 and 20 for our case, but so far it looks like we will be leaving it at 20.
It was not a PLC comms bottleneck, but internal in Ignition.

1 Like