Hello all, >>> Allow the user to set CCTK_STRICT_MATH in the optionlist. This >>> would indicate that strict ordering of floating point operations, >>> and IEEE compliance, is required in this build. This could >>> potentially then be used to select compiler optimisation settings >>> automatically. We could then introduce additional Cactus tests, >>> only enabled when CCTK_STRICT_MATH was set, which checked that >>> certain operations give exactly the correct results. That is probably doable but requires changes to the script that parses test.ccl and we need to check that make makes the option list variables accessible to its daughter processes (such as that script).
I added the required pragmas to LocalInterp2 to actually get IEEE conforming arithmetic in the file in question (there is a simimlar one for gcc as well in the no-associative-math) to demonstrate how this could be done. This lets the test pass on datura (where it failed before). This can be found here: https://bitbucket.org/cactuscode/cactusnumerical/pull-request/4/enforce-ieee-arithmetic-where-required/diff This is too late for the release I think, and for the release we should disable the test altogether I fear (not liking it though) unless we are happy with the C++ code change (and the corresponding gcc options for those option lists where -Ofast is used). >> I like this idea. I agree -- provided the fact that the test did not run is shown in the same manner that tests that are not run for other reasons is shown. Otherwise there is a high chance of someone trusting the fact that "all tests passed" that the interpolation is actually symmetric. The C++ code must then be changed to depend on the same flag and not its own LOCALINTERP_SYMMETRIC preprocessor define anymore. Basically unless CCTK_STRICT_MATH is set, there may not be C++ code that claims to preserve the symmetry. Yours, Roland -- My email is as private as my paper mail. I therefore support encrypting and signing email messages. Get my PGP key from http://keys.gnupg.net. _______________________________________________ Users mailing list [email protected] http://lists.einsteintoolkit.org/mailman/listinfo/users
