[MITgcm-support] cg convergence vs processor count
Constantinos Evangelinos
ce107 at ocean.mit.edu
Tue Jul 26 16:06:23 EDT 2005
On Tuesday 26 July 2005 14:34, Jason Goodman wrote:
> I'm working with a model of nonhydrostatic hydrothermal plume
> convection, and have noticed that the conjugate gradient parts of the
> code converge differently if the processor count changes. For
> example, if I set up a 16-processor run in SIZE.h:
[snip]
> The 24-processor run eventually blows up, apparently due to cg2d
> convergence failure.
>
> My understanding was that the numerical solution should be
> independent of the underlying processor layout. Is this correct?
Alas the non-associative nature of floating point arithmetic ensures that the
numerical solution is actually dependent on the order reductions (such as the
residual calculation in CG) are evaluated. However it is rather unusual for
these differences to lead to such huge differences in solver behaviour
(non-convergence vs. convergence). This is rather worrying and may be
indicative of some other underlying problem with your setup. Large
differences in summation results with differing reduction order tend to occur
when values in significantly different exponent ranges are added together.
> If
> not, what do I need to change to get the 24-processor run working?
> If so, what the heck is going on?
Constantinos
--
Dr. Constantinos Evangelinos
Department of Earth, Atmospheric and Planetary Sciences
Massachusetts Institute of Technology
More information about the MITgcm-support
mailing list