Skip to content
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

Check for differences in the MET unit test output when built with Intel vs GNU compilers #3072

Open
8 of 21 tasks
JohnHalleyGotway opened this issue Jan 31, 2025 · 0 comments
Open
8 of 21 tasks
Assignees
Labels
component: testing Software testing issue priority: high High Priority requestor: METplus Team METplus Development Team type: task An actionable item of work
Milestone

Comments

@JohnHalleyGotway
Copy link
Collaborator

JohnHalleyGotway commented Jan 31, 2025

Describe the Task

MET#3047 provides an Intel-based development environment on our project machine, seneca, as an alternative to our standard GNU-based development environment. When inspecting Ensemble-Stat output, @davidalbo observed very small (less than 10e-10), but non-zero differences in the BCMSE column of the SSVAR output line type. These types of insignificant numeric differences in the output are expected when using different compilers, but the differencing logic we use should be robust enough to handle them.

This task is to use the newly available Intel-based development environment on seneca to run the full set of unit tests (in bin/unit_test.sh). Then use MET's R-based comp_dir.sh script and/or the METplus differencing logic to check for differences in the output. Again, small numeric differences are expected, but we'd like to:

  1. Check for unexpected large differences (>10e-10).
  2. Quantify where and how many small differences are flagged.
  3. Look for opportunities to enhance the output to write 0 instead of numbers very close to 0.

Time Estimate

~ 4 hours

Sub-Issues

Consider breaking the task down into sub-issues.
None needed.

Relevant Deadlines

List relevant project deadlines here or state NONE.

Funding Source

This testing is being done as part of issue #3075.
Charge 2702701 since this work is in support of a clean METplus Conda build.

Define the Metadata

Assignee

  • Select engineer(s) or no engineer required
  • Select scientist(s) or no scientist required

Labels

  • Review default alert labels
  • Select component(s)
  • Select priority
  • Select requestor(s)

Milestone and Projects

  • Select Milestone as a MET-X.Y.Z version, Consider for Next Release, or Backlog of Development Ideas
  • For a MET-X.Y.Z version, select the MET-X.Y.Z Development project

Define Related Issue(s)

Consider the impact to the other METplus components.

Task Checklist

See the METplus Workflow for details.

  • Complete the issue definition above, including the Time Estimate and Funding Source.
  • Fork this repository or create a branch of develop.
    Branch name: feature_<Issue Number>_<Description>
  • Complete the development and test your changes.
  • Add/update log messages for easier debugging.
  • Add/update unit tests.
  • Add/update documentation.
  • Push local changes to GitHub.
  • Submit a pull request to merge into develop.
    Pull request: feature <Issue Number> <Description>
  • Define the pull request metadata, as permissions allow.
    Select: Reviewer(s) and Development issue
    Select: Milestone as the next official version
    Select: MET-X.Y.Z Development project for development toward the next official release
  • Iterate until the reviewer(s) accept and merge your changes.
  • Delete your fork or branch.
  • Close this issue.
@JohnHalleyGotway JohnHalleyGotway added alert: NEED ACCOUNT KEY Need to assign an account key to this issue component: testing Software testing issue priority: high High Priority requestor: METplus Team METplus Development Team type: task An actionable item of work labels Jan 31, 2025
@JohnHalleyGotway JohnHalleyGotway added this to the MET-12.1.0 milestone Jan 31, 2025
@github-project-automation github-project-automation bot moved this to 🩺 Needs Triage in METplus-6.1.0 Development Jan 31, 2025
@bikegeek bikegeek assigned JohnHalleyGotway and unassigned jprestop Feb 4, 2025
@bikegeek bikegeek moved this from 🩺 Needs Triage to 🏗 In progress in METplus-6.1.0 Development Feb 4, 2025
@JohnHalleyGotway JohnHalleyGotway removed the alert: NEED ACCOUNT KEY Need to assign an account key to this issue label Feb 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: testing Software testing issue priority: high High Priority requestor: METplus Team METplus Development Team type: task An actionable item of work
Projects
Status: 🏗 In progress
Development

No branches or pull requests

2 participants