This temporary is filled with the current values of the array immediately before the computation. The computation then involves temporary arrays which are already localized. This optimization allows a group of values to be localized and communicated prior to the computation. Following is a sample of code that would use the copy section communications optimization. The compiler creates schedules for communications.
Schedules are part of the overhead involved with communications.
Indirection arrays generally require expensive scheduling. By careful programming, one can reduce the number of schedules generated. Another technique that allows the compiler to optimize this type of communication is indirection array alignment. Another optimization that a programmer may use involves generating indirection arrays to reduce the use of expensive scalar communications. If you are comparing an HPF program to check its performance using several different algorithms, there are several relevant parameters to use when measuring performance.