*** this thread is the continuation of this other discussion thread, where the solution was to perform Summary calls in Asynchronously rather than Synchronously***
there is a tremendous performance improvement of asynchronous operations versus synchronous operations, especially if you have to connect to the PI Server remotely. Personally I observed improvements in the range of 2x to 10x by running many asynchronous summaries in parallel versus synchronous summaries in a series.
Think about that - if you have 100 summaries to calculate, in a synchronous world you send the first calculation, wait for the response, send the next calculation and so on. At the end you have waited 100 times for the round trip plus a single thread did all the work on the PI Server. In an asynchronous world you send the 100 calculations to the PI server, wait for the answer and get the result - so you did not wait for the 100 round trips and many threads did work on the PI Server for you. By running multiple asynchronous calls you take advantage of multi threading on the PI Server without you having to deal with a multi threaded PI SDK application.
Hope this helps