Gene Since Gene disregarded some of my previous posting, I thought I'd let it sit for a week and see if anyone else would enter the discussion. Since no one has, I am back to try to defend my position once again.
Compilers tend to use canonical distributions or rely on user directives.
Lots of people seem to gravitate toward owner- computes. Work in data optimization attempts to lower the cost of communication by changing the location of some computations. Once the data and computations have been distributed, communication must be inserted to get the data from processors where it resides to the processors that need it for computations. This is not meant to be a complete treatise on the subject, but rather a quick overview. There is no difference between F90 and F77 for this task.