Enable building and testing Omega in single precision #147
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR enables configuring Omega to use single precision and adds a test (reusing the tendency terms test) checking that we can build and run in single precision. The main changes are:
R8
toReal
where appropriateR8
arrays before storing them into the class membersR8
buffers for halo exchangesThe halo buffers change is not optimal for performance in single precision. It would need to be optimized if we decide
to pursue this option seriously in the future.
Checklist