-
Notifications
You must be signed in to change notification settings - Fork 624
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
flush subnormals on x86 #1709
flush subnormals on x86 #1709
Conversation
I wonder whether this could negatively affect the source cutoff code here: |
I'm not sure how it would affect that cutoff calculation, could you elaborate? ( |
Oh right, the computation is always done in double precision. Should be fine then. |
That being said, this |
Codecov Report
@@ Coverage Diff @@
## master #1709 +/- ##
=======================================
Coverage 73.33% 73.34%
=======================================
Files 13 13
Lines 4527 4528 +1
=======================================
+ Hits 3320 3321 +1
Misses 1207 1207
|
This seems to have fixed the issue with the noticeable slowdown in the timestepping due to the turn on of the pulsed source for a test problem in 3d: I'm not sure why there is a failing C++ unit test (
|
I tested this branch on my local machine and the same failing test on CI |
I think the tolerance in |
* fix factor 2 * fix * fix * fix * kpoint * fix * Fix the `binary_partition` copy constructor. (#1702) * Fix the `binary_partition` copy constructor. Prevents issues with older compilers. \#1683 #1701 * Update src/structure_dump.cpp Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> * single precision test tol * single precision test tol * Fix factor of 2 in adjoint gradients when not using complex fields (#1704) * fix factor 2 * fix * fix * fix * single precision test tol * single precision test tol * Update python/adjoint/objective.py Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Mo Chen <mochen@Mos-MacBook-Pro.local> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> * assertVectorsClose works for scalars as well as vectors (#1712) * assertVectorsClose works for scalars as well as vectors * rename ApproxComparisonMixin -> ApproxComparisonTestCase, since it is a subclass of TestCase, and use it as such * add --with-coverage to control usage of Python coverage tests (#1713) * add --with-coverage to control usage of Python coverage tests * move --with-coverage to correct CI line * flush subnormals on x86 (#1709) * flush subnormals on x86 * less aggressive error threshold in single precision * increase single-precision tolerance * update tols in test_array_metadata * update for assertVectorsClose rename * lower tolerance in single precision * Lower tolerance of CW and eigenfrequency solver tests for single precision (#1714) * lower tolerance of CW and eigenfrequency solver tests for single precision * remove change in default argument from Python wrappers * fix factor 2 * fix * kpoint * fix * single precision test tol * single precision test tol * using real * using real * fix rebase * fix * fix Co-authored-by: Mo Chen <mochen@Mos-MacBook-Pro.local> Co-authored-by: Andreas Hoenselaar <ahoens@google.com> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Ardavan Oskooi <ardavano@google.com>
* flush subnormals on x86 * less aggressive error threshold in single precision * increase single-precision tolerance * update tols in test_array_metadata * update for assertVectorsClose rename * lower tolerance in single precision
* fix factor 2 * fix * fix * fix * kpoint * fix * Fix the `binary_partition` copy constructor. (NanoComp#1702) * Fix the `binary_partition` copy constructor. Prevents issues with older compilers. \NanoComp#1683 NanoComp#1701 * Update src/structure_dump.cpp Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> * single precision test tol * single precision test tol * Fix factor of 2 in adjoint gradients when not using complex fields (NanoComp#1704) * fix factor 2 * fix * fix * fix * single precision test tol * single precision test tol * Update python/adjoint/objective.py Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Mo Chen <mochen@Mos-MacBook-Pro.local> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> * assertVectorsClose works for scalars as well as vectors (NanoComp#1712) * assertVectorsClose works for scalars as well as vectors * rename ApproxComparisonMixin -> ApproxComparisonTestCase, since it is a subclass of TestCase, and use it as such * add --with-coverage to control usage of Python coverage tests (NanoComp#1713) * add --with-coverage to control usage of Python coverage tests * move --with-coverage to correct CI line * flush subnormals on x86 (NanoComp#1709) * flush subnormals on x86 * less aggressive error threshold in single precision * increase single-precision tolerance * update tols in test_array_metadata * update for assertVectorsClose rename * lower tolerance in single precision * Lower tolerance of CW and eigenfrequency solver tests for single precision (NanoComp#1714) * lower tolerance of CW and eigenfrequency solver tests for single precision * remove change in default argument from Python wrappers * fix factor 2 * fix * kpoint * fix * single precision test tol * single precision test tol * using real * using real * fix rebase * fix * fix Co-authored-by: Mo Chen <mochen@Mos-MacBook-Pro.local> Co-authored-by: Andreas Hoenselaar <ahoens@google.com> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Ardavan Oskooi <ardavano@google.com>
* flush subnormals on x86 * less aggressive error threshold in single precision * increase single-precision tolerance * update tols in test_array_metadata * update for assertVectorsClose rename * lower tolerance in single precision
* fix factor 2 * fix * fix * fix * kpoint * fix * Fix the `binary_partition` copy constructor. (NanoComp#1702) * Fix the `binary_partition` copy constructor. Prevents issues with older compilers. \NanoComp#1683 NanoComp#1701 * Update src/structure_dump.cpp Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> * single precision test tol * single precision test tol * Fix factor of 2 in adjoint gradients when not using complex fields (NanoComp#1704) * fix factor 2 * fix * fix * fix * single precision test tol * single precision test tol * Update python/adjoint/objective.py Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Mo Chen <mochen@Mos-MacBook-Pro.local> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> * assertVectorsClose works for scalars as well as vectors (NanoComp#1712) * assertVectorsClose works for scalars as well as vectors * rename ApproxComparisonMixin -> ApproxComparisonTestCase, since it is a subclass of TestCase, and use it as such * add --with-coverage to control usage of Python coverage tests (NanoComp#1713) * add --with-coverage to control usage of Python coverage tests * move --with-coverage to correct CI line * flush subnormals on x86 (NanoComp#1709) * flush subnormals on x86 * less aggressive error threshold in single precision * increase single-precision tolerance * update tols in test_array_metadata * update for assertVectorsClose rename * lower tolerance in single precision * Lower tolerance of CW and eigenfrequency solver tests for single precision (NanoComp#1714) * lower tolerance of CW and eigenfrequency solver tests for single precision * remove change in default argument from Python wrappers * fix factor 2 * fix * kpoint * fix * single precision test tol * single precision test tol * using real * using real * fix rebase * fix * fix Co-authored-by: Mo Chen <mochen@Mos-MacBook-Pro.local> Co-authored-by: Andreas Hoenselaar <ahoens@google.com> Co-authored-by: Steven G. Johnson <stevenj@mit.edu> Co-authored-by: Ardavan Oskooi <ardavano@google.com>
Closes #1708.