Unfortunately, the bulk calls do not support Updating the value: PIPointList Class
While you can send updates to a single point in bulk: PIPoint.UpdateValues Method (IList(AFValue), AFUpdateOption)
But maybe you can find some ideas here: PI AF SDK guidelines
or wait until there is someone with more experience on the matter to comment.
Hello and thanks for your replay Roger!
I did a test with the AFListData.UpdateValues bulk method and it performs much better.
I currently use a single thread for writing the values, will it perform better with several threads writing through the AF SDK?
1 of 1 people found this helpful
It depends, i don't think that parallelisation won't add much benefit over bulk calls. Typically you are not constrained on your client-side, but on network, latency, PI server throughput, etc. And those are things parallelisation on the client side can't fix.
But i must say, i personally have limited experience on this topic. So mainly relaying available knowledge.
Page 30 of the PI AF SDK guidelines give some pointers. mainly these 2 PI Square topics:
Be aware that performance is highly dependant on your specific situation, so when you want to achieve maximum performance, you need to do some tuning to see what works best in your specific case.
2 of 2 people found this helpful
Don't forget to buffer the writes, that way your application doesn't become blocking.
It is good to see new folks on PI Square, thanks for joining!
I believe you can mark Roger's answer as correct, he will be happy
You can do so by clicking on the bottom left button "Correct Answer" on the reply that answered your question.
See you soon on PI Square!
I could not resist to make promotion to the CLUES community project I started where I ended up creating a small utility to generate test data, as per survey's request.
You can find the related code that creates new tags and generates random data here:
I am interested with your feedback, and maybe we can augment this code with what you are trying to achieve?