Sent: Wednesday, November 13, 2024 at 8:58 PM From: "Jeffrey Walton" noloader@gmail.com To: "Community support for Fedora users" users@lists.fedoraproject.org Cc: "Patrick Dupre" pdupre@gmx.com Subject: Re: gcc/gsl
On Wed, Nov 13, 2024 at 1:33 PM Patrick Dupre via users users@lists.fedoraproject.org wrote:
I am not sure this issue is entirely relevant on this mailing list. Maybe you could redirect me.
The same application (relatively heavy code), provides different values when it is run and compiled on 2 different machines. Both F40 (last update) gcc (GCC) 14.2.1 20240912 (Red Hat 14.2.1-3) One Intel(R) Core(TM) i5-7400 CPU @ 3.00GHz The other one Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz Actually, this happens when I use the gsl library. gsl-devel-2.7.1-8.fc40.x86_64 for integration (gsl_integration_cquad). Before integration, the values are strictly identical. The same Makefile is used. Now, if I copy the code generated by the machine A on machine B, I get the same results as it had been run on machine A. The size of both codes are slightly different. I conclude that the issue is due to the compiler. Indeed, the difference in the generated values seems pretty constant, i.e., it seems proportional to the value itself: of the order 2.7e-8 (relative difference) i.e. a lot higher than the accuracy of the machine: < 1e-35.
Which one is the good one? Why this behavior? Can I solve the issue?
I would take the issue to the libgsl folks at https://www.gnu.org/software/gsl/. The help-gsl help-gsl@gnu.org users mailing list looks like the right place.
I would not be surprised if they knew the problem based on your description.
There a version 2.8 of gsl but is not available for fedora
Jeff