Repository navigation
Limit loop bounds to avoid division by zero - #562
andrewdnolan wants to merge 4 commits into
Conversation
Testing:A single node, non-threaded, smoke test on chrysalis using debug build: Prior to this PR, that same test failed with:
Here's a full log file, if you're interested: |
TestingCTest unit tests
Tried running the |
|
Under what conditions is |
I think this is harmless, but can happen when computing over all vertices in the halo region. An outermost halo vertex may have only one active cell that is on a different rank. I think a better fix for this issue may be to limit the horizontal bounds here Omega/components/omega/src/ocn/AuxiliaryState.cpp Lines 212 to 219 in 0c3353c to loop only over |
|
@mwarusz's diagnosis is consistent with my understanding. This only occurs in the halo region when not all cells on vertex are active, so I don't think it's really accurate to call it a vertical masking issue. The issue was exposed by @mwarusz I like that suggestion! Thanks for it. I'll switch to that approach and re-test. |
4df0539 to
a328748
Compare
a328748 to
6ff830b
Compare
|
@andrewdnolan do you need help with testing? |
|
I will be in touch depending on how my standalone (polaris) testing goes. I should be OK to handle coupled and unit tests. |
b8e36e0 to
73ad77e
Compare
Testing,
|
Testing,
|
|
@mwarusz could you take another look at this? Sorry about letting it slip through the cracks. |
VorticityAuxVars.h|
I rebuilt and re-ran my |
Co-authored-by: Maciej Waruszewski <mwarusz@igf.fuw.edu.pl>
010ec52 to
4801da1
Compare
|
I'm running the full |
Testing on frontierTested the merge of #562 (
frontier, craygnu, mpichPolaris
|
Limit loop extents to avoid division by zero.
The issue was exposed using
SMS_Vmct_D_P64x1.T62_oQU240.COMEGA-IAF, with thegnucompiler, on chrysalis. The_Dmodifier in the test name resulted in a debug build, which adds the-ffpe-trap=invalid,zero,overflowflags.This has not been caught previously, because a standalone
Debugbuild of Omega does not use the-ffpe-trap=invalid,zero,overflowflags.Closes #556.
Checklist
Linting
Building
Testing
aurora, intel, mpich
aurora, intelgpu, mpich
chrysalis, intel, openmpi
frontier, craygnu, mpich
frontier, craygnu-mphipcc, mpich
pm-cpu, gnu, mpich
pm-gpu, gnugpu, mpich