← Back to team overview

yade-dev team mailing list archive

Re: results scatter with identical initial simulation

 

Hi Václav,

Just for information, when I was using SDEC, it was giving exactly the same result, absolutely no difference, when identical simulations where repeated (at least on the same computer). SDEC was not using OpenMP, thus it may be an argument to discard the 2nd (Lunding's) explanation (?)

Best,
Luc

Le 05/03/2015 12:05, Václav Šmilauer a écrit :
Hi there,

I'm having an issue with results differing between initially identical simulations. I know we have two stock explanations:

  * the fairytale, authored by myself back then, that (force, ...)
    summation order is non-deterministic due to OpenMP (threads
    switching controlled by the kernel) and these small rounding
    errors propagate in chaos-like fashion, having macroscopic effect
    at the end;
  * CPU may "randomly" keep some doubles in registers (which have more
    width, IIRC 80bit?), and keep other ones in cache/RAM, which have
    less width (64bit); thus some numbers will be randomly more
    precise than others, which again leads to non-determinism and
    propagation as above. I heard this from Stefan Luding (IIRC) some
    10 years ago at a conference, but I am not sure how valid that is
    at all; I have not heard about that from other sources.

I am not conviced by either explanation, the scatter seems to be too big (roller screens -- I get something like 2% scatter in resulting PSD curves over a long simulation run multiple times, with completely idetnical initial situation). Even though I use Woo, I assume the problem is still the same as in Yade. So I would like to hear about:

  * Someone else having that problem at all?
  * Someone did a proper (quantitative) in-depth investigation of this?
  * Someone run Yade through valgrind recently, to check for
    uninitialized memory reads?
  * I know that PFC 5.0 has what they call "deterministic mode"
    simulations, someone knows the internals of what it does?
    (Emanuele? If you may disclose that --)

Cheers,

Václav


_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to     : yade-dev@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~yade-dev
More help   : https://help.launchpad.net/ListHelp

--
Luc Sibille
Université Joseph Fourier / IUT1 de Grenoble
Laboratoire 3SR UMR CNRS

Tel lab.: +33 (0)4 76 82 63 48
Tel IUT: +33 (0)4 76 82 53 36


References