yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #14959
Re: Do we want low precision float in the gitlab CI pipeline?
-
From:
"Janek Kozicki (yade)" <jkozicki-yade@xxxxxxxxx>
-
Date:
Mon, 2 Mar 2020 12:30:52 +0100
-
Cc:
Yade developers <yade-dev@xxxxxxxxxxxxxxxxxxx>
-
Face:
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAALVBMVEUBAQEtLS1KSkpRUVFXV1dYWFhjY2Nzc3N3d3eHh4eKioqdnZ24uLjLy8vc3NxVIagyAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH2AIVEzgS1fgQtQAAAjRJREFUOMtt1DFv00AUAOAzFQNbjigSyoQaRaBMhKgLUyKXpVNNeUpk9vyDqFJhQ1kiBuaqAwJCqvPtSLY7RlTn5+5IdnYkkt/AOyfxXVLe5vf53Z1875kd34tOEax8djmj6GyjhB5bxz50GdsVZr9fqRjZwAtKOJw5Wqs2MMZ16ALHsaDncF7xAHix1oEFHAB8f+pRjcO4gfZDykcYzbiucRolOLUJ6kjA0xtVt+A6TySlM0RajIpK6DzwKZ/nOYbF/gclHMo1ZOHYY/+Ha+AWuM+3oMS4eeqYzZ8FiCltgUqI8cd2wwAVpJk+8LWYjBtnJdQpHQqJMd4Oxt4bU9ESiFGc5hkqaH74asAX4iabP5I5gZ+qjgGlJCqZa3h3lxhoeVcSE1qLQC4sqKOK9MGW9E3izFqqHokoztLFEgXg31sbZEKnWi2T74A4NxfVQqlkjKtcAWD+zcArFEES01dR0E/nnV0IgugmDd/2L84sOAouRBBHEc7gtc8teDkRlE0iNQPo2w3Xhh/D4TCIQ4LRLoTvgwjj6RRgavdurxYGMaIuGOyAW/PpNlCcU9/93AHenAWYjPoAwa+G3e3to/MgFNTAEKvKDjzuCzHTnY3qqdXtx24VijzQfZ0yewZ5cwRFQaa+mIYr1uI0I76+3W4xhlvoVRwOA0Fdl64HlJnxP6T8YpX/Lga4Wv4A3ErrU5oTfN7Mu/llXMl8RXEPji/lQkN3H7qXqgC2By47EXeU/7PJ/wPxRKMnuZwIeAAAAABJRU5ErkJggg==
-
In-reply-to:
<CANFfKpEHdT3mZGQE8RVvuwH-ObcY4fGUmeu6F6B0s9ZTA4nCeA@mail.gmail.com>
-
Organization:
Gdańsk University of Technology, YADE software
OK, thanks :)
And thanks for the link to sudoDEM :)
Bruno Chareyre said: (by the date of Sun, 1 Mar 2020 21:48:19 +0100)
> (sorry for previous empty message)
> Hi,
> I don't think DEM can realistically work with floats. If 100 particles in a
> row are elongated by 0.01%, the relative displacement between the 99th and
> 100th particles is 1e-6 times the positions. With single precision it would
> already produce substantial numerical noise in terms of contact force.
> I mentioned single precision in relation with solving linear systems with
> cholmod, and that part does not support HP.
> I think we can skip the float pipeline. :)
> Cheers
> Bruno
>
>
>
> On Sun, 1 Mar 2020 at 16:24, Janek Kozicki (yade) <jkozicki-yade@xxxxxxxxx>
> wrote:
>
> > Hi,
> >
> > The high precision tests are now running in the gitlab pipeline. And
> > we can be sure that `double` are not getting by accident into master.
> > (except for the modules which are not supported by HP right now [1],
> > in there some `double` could sneak in)
> >
> > This work also makes low-precision possible. I didn't add this to the
> > pipeline, thinking it's not of much use. In some comment Bruno
> > mentioned that some people want to use float in the GPUs to get the
> > results faster. (Whether these results are correct is a topic for a
> > different discussion :)
> >
> > I could prepare a merge request that adds float to the pipeline,
> > because it is compiling (so it works) but it is not passing the tests.
> >
> > The disadvantage is that in many test scripts an exception will have
> > to be written using following distinction:
> > if (yade.config.highPrecisionDecimalPlaces < 7):
> >
> > That's because some of the tests produce different results when float
> > is used, which is not a surprise ;)
> >
> > Currently yade --check has following failures on float:
> >
> > 7 checks are failed
> > checkColliderConstantness.py
> > checkViscElEng.py
> > checkPotentialParticles.py
> > checkColliderCorrectness.py
> > checkJCFpm.py
> > checkWirePM.py
> > checkCapillaryModels.py
> >
> > And yade --test also has similar errors due to only 6 available
> > decimal places. The log is longer, so I attach it.
> >
> > And most of these failures are because the results are compared with
> > 1e-8 precision, while float maximally can offer 6 decimal places.
> >
> > best regards
> > Janek
> >
> >
> > [1]
> > https://yade-dev.gitlab.io/-/trunk/-/jobs/455155443/artifacts/install/share/doc/yade-ci/html/HighPrecisionReal.html#supported-modules
> >
> >
> >
> > --
> > Janek Kozicki, PhD. DSc. Arch. Assoc. Prof.
> > Gdańsk University of Technology
> > Faculty of Applied Physics and Mathematics
> > Department of Theoretical Physics and Quantum Information
> > --
> > http://yade-dem.org/
> > http://pg.edu.pl/jkozicki (click English flag on top right)
> > _______________________________________________
> > 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
> >
>
>
> --
> --
> _______________
> Bruno Chareyre
> Associate Professor
> ENSE³ - Grenoble INP
> Lab. 3SR
> BP 53
> 38041 Grenoble cedex 9
> Tél : +33 4 56 52 86 21
> ________________
>
> Email too brief?
> Here's why: email charter
> <https://marcuselliott.co.uk/wp-content/uploads/2017/04/emailCharter.jpg>
--
--
Janek Kozicki, PhD. DSc. Arch. Assoc. Prof.
Gdańsk University of Technology
Faculty of Applied Physics and Mathematics
Department of Theoretical Physics and Quantum Information
--
http://yade-dem.org/
http://pg.edu.pl/jkozicki (click English flag on top right)
References