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 : [email protected]
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
_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to : [email protected]
Unsubscribe : https://launchpad.net/~yade-dev
More help : https://help.launchpad.net/ListHelp