I am looking for a baseline tuning for a PI Server (2017 R2 or later if it helps) in order to benchmark a PI AF Client (latest 2.10x) which generate in order snapshot value at 1 event value / s / pi point for 1 Million pi point type float32 with no compression.
PI Server on new hardware Server grade Fast processor, RAM and a lot of I/Os with high speed SSD, Fast/low latency network
Each PI Server(s) got its own dedicated server and PI AF got its own dedicated server.
PI AF Client app on new hardware Server grade Fast processor, RAM and a lot of I/Os with high speed SSD, Fast/low latency network
PI Server 2017 R2 install with default parameters except Update manager > Max Update Queue value: 20 000 000 Max: 100 000 000 and total update queue value 40 000 000 max 1 000 000 000
Test1: PI AF Client app PIbufss to fan out to send the snapshot events to a 2 nodes PI Collective w/ 2017R2, but it seems to have contention/queuing after 250K event/s on an average windows of 5s
Test2: PI AF Client app without pibufss so no fan out the snapshot events to a single node in a PI Collective w/ 2017R2, but it seems to have contention/queuing after 300K event/s on an average windows of 5s
The PI AF Client app has been optimized to reduce overhead, API calls, memory management, latency GCC and multithread/core to spread the generation and API calls
Test3: PI AF Client app on multiple servers -> much worse than Test1 and Test2
So far the documentation I found can not define rules to tune/setup a PI Server for some simple requirements such as a monotic snapshot event flow.