E3SM-Project / E3SM-Project/eamxx-scripts
Testing on GPU
- Dominant language
- Shell
- Stars
- 2
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
1a. to get gcc to do the same as `-fp-model=strict`, one uses
`-ffp-contract=off`.
1b. to get cuda to do the same, one adds `--fmad=false` to `cuda_args` in
`nvcc_wrapper`.
2. in addition, team reductions and scans will still diff. hommexx serializes
these with a wrapper. however, these account for too much of the code in p3, so
we can't use this route w/o losing tons of testing of important ||ism.
thus, for gpu tests, we should do non-bfb testing and set an appropriate tol. we
can augment the tolerance specification in run_and_cmp with something like
```
if (OnGpu::value)
tol = 10*std::numeric_limits::epsilon();
```
we can still use 1a and 1b to get the diffs down to just the reduction/scan
ones.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.