-
Notifications
You must be signed in to change notification settings - Fork 117
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
Apple M1 vs x86_64 floating point differences. #3123
Comments
I asked chatgpt what the clang equivalent would be for
It turns out that the above difference in By the way, with ninja, it is particularly simple to add such a flag in build.ninja by searching for the cpp file and in the build rule adding to FLAGS. |
With Mac cmake build
Returning to the current master (uses cvode version 2) and instrumenting The instrumentation changes are:
Given this observation, it seems reasonable to focus on the fixed step difference beween x86_64 and M1. |
Just a note. On mac m1, I get identical results between default and |
I observe occasional slight differences between FPU results between Mac M1 and linux x86_64 . Those differences sometime accumulate and cause CI failure for MACOS. This issue is blocking progress on #1960
Here is an example of a gaussian elimination difference during triangularization during the first time step of a 1 compartment HH model.
The instrumentation in nrn/src/nrnoc/solve.cpp
static void triang(NrnThread* _nt) {
was :Double precision result identity perhaps requires an additional set of comparison files created by Apple M1 runs. Alternatively, suggestions by chatgpt that might be explored are:
The text was updated successfully, but these errors were encountered: