1 Reply Latest reply on Dec 11, 2017 1:04 PM by rschmitz

    Ways to optimize the PI Server Reads (tuning parameters)


      Hello everyone,

      We're running into an issue at our organization, where PI Client tools are taking time to fetch data form the PI server for the heavy duty tags.

      I'm looking for ways to optimize the PI server as much as possible.

      We have Windows server 2012 R2 64bit. 32GB ram, CPU E52690v2 (2processor). HP G8 DL380. Pi server 2015R2.

      We know that the issue is with these tags which are being archived at a very high rate (required). we're talking these tags have around 7000-8000 values per day.

      If i open PI DataLink and try to fetch 1 year of data for 1 tag, calculated average 1 value per day, it takes around 1min20s to display the data. this seems high.

      While the query is running, i notice that in the Microsoft Resource Monitor the Disk usage for piarchss.exe is jumping to 10MB/s while all of the archives files start to open one after the other all the way until the query gather all of the data required and display it in excel.


      We have 10K HDD.

      The CPU is barely over 2% , RAM we have 32GB and running at 44% and doesn't jump during the query.

      Here below are the PI tuning parameters. if you can identify anything which could help please advise.




      Thank you and Best Regards

        • Re: Ways to optimize the PI Server Reads (tuning parameters)

          Hi Michel,

          Perhaps there's a way we can improve the DataLink query to be more optimized by utilizing bulk calls to reduce the amount of time it takes to open your spreadsheet. Please take a look at the following documentation and see if making the changes suggested to utilize bulk calls helps with the time to open your spreadsheet. Additionally, you mentioned that you're retrieving a calculated daily average for the tag for the previous year. Is this average being calculated "on the fly" through DataLink's "Calculated Data" function? If so, that process is likely a large amount of the retrieval time. Would you consider using an Analytic to find the daily average for this tag and storing it in a second tag so that it can be retrieved thus reducing the amount of client side calculations that need to be done?