I'm using the older (-7) version of the free SCYLD and I have found that
the mpif77 compiler gives about half the speed of g77 at the same level
of optimization. Also, it behaves in a very unstable way when one uses
individual optimization commands (-fcse-follow-jumps, for example). The
calculation can simply blow up. At the same time, it seems to share some
instability with the g77 compiler. We are using a Sandia DFT code, QUEST,
and -O2 and -O3 lead to substantial differences in computed results. I
have found that the optimization call -fcaller-saves is the culprit in
QUEST and that its absence leads to no degradation in performance on a
standard non-SCYLD linux box. Also using -O2 -fcaller-saves doesn't lead
to really bizarre behavior. It even gives completely correct results,
even though it is half as fast as a normal serial Linux box.
So, I have the newer free version (from Cheap-bytes) and I'm thinking of
upgrading. Is the new mpif77 compiler actually optimized better? Is the
newer (-8) SCYLD substantially better in other ways? Are there any
problems with the upgrade?
Art Edwards