Remove Serialization

 You can improve the performance of the poisson sample program by replacing the blocking  MPI_Sendrecv with non-blocking communications via MPI_Isend. The modified source file pardat.f90_icomm is available in the source folder. The trace file of the modified program is also available: <install-dir>/examples/traces/poisson_icomm.single.stf.

Once corrected, the single iteration of the revised program will look similar to this:

Since poisson_sendrecv.single.stf is a striking example of serialization, almost all of the Intel® Trace Analyzer charts show this interesting pattern. But in the real-world cases, it may be necessary to formulate a hypothesis regarding how the program should behave and to check this hypothesis using the most suitable chart.

Key Terms


For more complete information about compiler optimizations, see our Optimization Notice.