Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FESOM2 data not fully reproducible on ollie #145

Closed
patrickscholz opened this issue Jun 28, 2021 · 4 comments
Closed

FESOM2 data not fully reproducible on ollie #145

patrickscholz opened this issue Jun 28, 2021 · 4 comments

Comments

@patrickscholz
Copy link
Contributor

patrickscholz commented Jun 28, 2021

#146

Problem:

  • FESOM2.0 simulations on AWI ollie HPC were not always reproducible. Runs with identical namelists, init-conditions ... could lead to sligthly different results. The bias produced by ollie looked like...
    plot_ctrl-orig_cyl_sst_rec_i0_
  • shows sst bias on ollie with core2 after 1 month of simulation
  • i was able to track down this bias to problems with the exponential funktion on ollie

Solution from Natalja Rakowsky:

  • exchange compiler flag -fast-transcendentals against -no-fast-transcendentals (slower not vectorizable) or better -fimf-use-svml (should be faster is vectorizeable)

What happens from Natalja Rakowsky:
1.) IEEE legt sich bei transzendenten Funktionen nicht fest.

2.) Vektor-, Skalar- und alternativ etwas ungenauere, schnellere Implementierungen (mit -no-fast-transcendentals erlaubt) können drei verschiedene Ergebnisse liefern. In heutigen Systemen offenbar: Es ist nicht deterministisch, welcher Weg beschritten wird.

3.) Mit "-no-fast-transcendentials" legt man fest, dass immer die skalare Implementierung benutzt wird. Damit sind Schleifen mit exp, sin, cos,... nicht vektorisierbar und damit teils deutlich langsamer.
Intel hat seit Version 18 darum alternativ im Angebot, mit "-fimf-use-svml" exp + co immer deterministisch durch die Vektor-Implementierung zu ziehen. Das ist skalar kaum langsam, vektorisiert deutlich schneller, und sollte bitte, bitte auch deterministische Ergebnisse liefern.

@dchirila
Copy link

dchirila commented Jul 1, 2021

@chrisdane
Copy link

Should this also get changed in fesom1?

@patrickscholz
Copy link
Contributor Author

@chrisdane i think this also could be changed in FESOM1.4, although i never checked FESOM1.4 on ollie with respect to that issue but also there the exp() funktion should kick in. But also keep in mind that it was an ollie specific problem, neither mistral or hlrn showed this behaviour, maybe they hid this option somewhere in the background.

@koldunovn
Copy link
Member

Fixed in #146

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants