Back

Topic

[KB5]How to diagnose a bottleneck of Write requests

Tags: Bottleneck, Cimway, Write Commands

15 years ago
By RM
Options
Print
Applies to:

PcVue from version 7.20a.


Summary:

This article explains how to diagnose a bottleneck of Write requests from the EQT Manager to CimWay.


Details:

The properties that control the general operation of the Supervisor’s native communication drivers are as follows.

Property: ‘Enable sequencing Write’

In versions 7.20 and earlier, the sequencing of write requests was always enabled. The process is as follows.

  • The EQT Manager processes a Write request from its mailbox, transmits it to CimWay then awaits the answer. It is only on receiving a response from CimWay that the EQT Manager consults its mailbox again to process a new message.
  • If the number of Write requests received by the EQT Manager is greater than the number of requests CimWay can handle, a bottleneck occurs in the EQT Manager’s mailbox.
  • If the Watchdog message remains blocked for more than 60 seconds then error message 300 appears in the Event Viewer:
    WATCHDOG, Response no. of the process 4 (60, 61),
  • If that delay exceeds 600 seconds, error message 304 appears in the Event Viewer:
    WATCHDOG, Response no. of the process 4 Stop requested (600,601) and the Supervisor has to be stopped.

In versions 7.20a and later write sequencing is not enabled by default. In this case EQT Manager processes the Write requests in parallel for each device in a non-blocking mode, i.e. the Manager does not wait for the replies.

Property: ‘Maximum number of pending frames’

This property is used when the sequencing of write requests is disabled. The default value is 100. If the number of write requests (per equipment) that are waiting is higher than that, error message number 4534 appears in the Event Viewer:

CW , Number of Write requests in progress is too large
(<number of Writes waiting on the device.)

If the number of Write requests waiting is more than 10 times this number then error message 4578 appears in the Event Viewer:

CW , Number of Write requests in progress is too large (NACK)
(number of Writes waiting in the device / total number of Writes waiting)

and the Write request is abandoned.

Accessing these properties

In versions before 8.10 these properties are found in the Communication Options dialog ( Configuration > Communication > General Operation)

In versions 8.10 and later these properties are found in the Communications folder of the General Operations dialog (Configuration > Project > General operation) 

CimWay_GenOpsConfig_dlg_WriteRequests

In versions supporting the Application Explorer these properties are found in Settings > Advanced > Communication > Equipment.

Flow and message counters available in the Audit files

Flow and counter of the number of writes on a single equipment variable

This relates to the user action on Send animations on variables and the forcing of variables from SCADA BASIC and from VB/VBA.

 EQT WRITE 0                  3__base 10

6 __ 21/12 07:13:01

4 __ 21/12 07:13:12

3 __ 21/12 07:13:23

3 __ 21/12 07:13:34

3 __ 21/12 07:13:45

 

EQT Write                        205 20763 205

1       0        0

2       0        0

3       205    20763

4       0        0

The first column represents the type of variable:

1 – Bit.
2 – Alarm.
3 – Register.
4 – Text.

The line for the register variable shows that there are 205 Write requests waiting.

Flow and counters on the number of recipes sent

This relates to the Send Recipe requests from the Recipe module or from the SENDLIST instruction in SCADA BASIC.

Recipe Write

0

1 __ base 10

 

 

 

6 __ 21/12 07:13:01

 

 

 

1 __ 21/12 07:13:12

 

 

 

1 __ 21/12 07:13:23

 

 

 

1 __ 21/12 07:13:34

 

 

 

1 __ 21/12 07:13:45

 

Recipe Write

 

5

63

5

 

1

1

12

 

 

2

4

51

 

The first column represents the type of recipe.

1 – Block mode
2 – Multiple mode

In this example there are five recipes waiting, one in block mode and four in multiple Mode.

Flow and counter for the number of frame write requests to Cimway from the EQT manager

CimWay Write

0

3.1 __ base 10

 

 

 

3.9 __ 21/12 07:51:42

 

 

 

3.8 __ 21/12 09:07:36

 

 

 

3.7 __ 21/12 07:47:07 3.7 __ 21/12 07:52:04

 

 

 

3.7 __ 21/12 08:24:09

 

CimWay Write

 

205

20559

205

 

1

205

20559

 

 

2

0

0

 
 

3

0

0

 

 

4

0

0

 

The first column shows the command type:

1 – Write a single variable
2 – Write multiple variables in Block mode
3 – Write multiple variables in Multiple mode
4 – Write multiple variables in Block mode requested from the Manager Toolkit (SvMgr)

In this example, there are 205 Write requests waiting for a particular variable but none for multiple variables.

Message counter for messages waiting in the manager’s mailbox

MSG_PENDING

 

206

655789

206

 

0

0

155385

 

 

2

0

139512

 
 

3

0

9513

 

 

4

206

20892

 

 

5

0

203703

 
 

6

0

92716

 
 

7

0

5330

 
 

8

0

28171

 
 

9

0

1

 

The first column represents the EQT Manager.

0 – Startup
1 – (not used)
2 – Timer
3 – Multi-station (LAN)
4 – Equipment (interface with CimWay for equipment variables)
5 – Variable
6 – UI (User Interface)
7 – Alarm
8 – Historical
9 – Configuration server

In this example, there are 206 messages waiting in the EQT Manager. If sequencing of Write requests is enabled and there are too many Write requests, this counter will increase (normally it should be at or around 0). Then the counters for Cimway write, EQT write and Recipe write should be examined.


Created on: 16 Feb 2010 Last update: 13 May 2024