Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

PI to PI Interface

Performance considerations

  • Last UpdatedOct 06, 2025
  • 2 minute read

Minimize network latency

To minimize the effect of network latency on data throughput, run the PI to PI Interface on the source PI Data Archive computer with buffering enabled.

Maximize archive cache reads

Data Archives version 3.4 and higher cache a small amount of recent archive data in memory (by default, four events). The size of this server cache is configurable, and you can adjust the frequency of scan classes so that scans occur frequently enough to maximize the reading of archive data from the cache rather than from disk.

Reading archive data versus exception data

You can configure the interface to collect data from the source server’s archive or from its snapshots (exception data). Reading snapshots is faster, because data is read from memory rather than disk. However, exception data has not been compressed. To read a point’s snapshot (exception data), assign the point to scan class 1.

Managing memory consumption

The Data Archive maintains update manager queues that store events in memory for client applications such as PI Interfaces. The server creates separate queues for each client application that requests updates. The queues grow between scans as exceptions accumulate on the source Data Archive. To control the amount of server memory consumed by update queues, you can configure a maximum size for individual queues and a maximum for the total amount of memory consumed by all update queues. If a queue reaches its maximum size, the server stops queuing updates for the interface, which causes the interface to delete its point list, log errors, and enter history recovery to reinitialize data collection.

To configure these limits, set MaxUpdateQueue and TotalUpdateQueue using PI System Management Tools or the piconfig utility. Default maximums for queue size are as follows (specified as exception events per client application):

  • Data Archive 3.4.375.38 (PR1) and later: 50000

  • Data Archive 3.3 to Data Archive 3.4.370: 4096

  • Data Archive 3.2: 2000

To calculate the minimum queue size required, use the following formula:

Minimum Limit = Interface Point Count * Scan Rate (Sec)

For example, if the interface is maintaining 10,000 target points with a scan rate of 10 seconds, set the pending update limit and global update limit to at least 100,000. You can also manage the workload by careful configuration of scan rates for target points. Choose a small initial scan rate (for example 10 seconds), then use a performance point to determine the average time required to complete the exception data scan and adjust the scan rate accordingly.

In This Topic
TitleResults for “How to create a CRG?”Also Available in