Skip to content

Conversation

@hugary1995
Copy link
Contributor

This update mainly does two things:

  • Switch neml2 from gnu-make to update_and_rebuild_neml2.sh
  • Add support for work dispatchers

The switch to update_and_rebuild_neml2.sh is needed because

  • NEML2 could be bringing in some additional dependencies in the future
  • NEML2 may generate files at configure time
  • This makes it easier to build binaries and ship NEML2 in containers

While the same can be managed by the MOOSE make-based build system, it is easier to maintain and manage if we just rely on NEML2's own CMake scripts, in the long run.

List of changes

  • Added scripts/update_and_rebuild_neml2.sh
  • Update neml2.mk
  • Update neml2 submodule
  • Add support for dispatchers
  • Add documentation and tests for dispatchers
  • Handle default dtype; we no longer manipulate torch default dtype outside NEML2 region
  • Fix --parse-neml2-only cli arg

ref #29579

@hugary1995
Copy link
Contributor Author

@loganharbour This is one of the things we discussed about. I believe we need to make some changes to civet recipe to call update_and_rebuild_neml2.sh.

Copy link
Member

@loganharbour loganharbour left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First run through. Mostly minor. I can create a step for the cases that use neml2 to run update_and_rebuild_neml2.sh for just this PR

Copy link
Contributor

@reverendbedford reverendbedford left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we get GPU nodes on civet? If so we could do an "actual" StaticHybridScheduler test with a gpu and the cpu.

@loganharbour
Copy link
Member

Can we get GPU nodes on civet? If so we could do an "actual" StaticHybridScheduler test with a gpu and the cpu.

Yep, we can.

@loganharbour loganharbour force-pushed the neml2_build_script branch 3 times, most recently from 8442a43 to 68ab01d Compare March 26, 2025 21:48
@loganharbour loganharbour changed the title Update NEML2 submodule Update NEML2, add NEML2 build script, add NEML2 to moose-dev container Mar 27, 2025
@hugary1995 hugary1995 force-pushed the neml2_build_script branch 3 times, most recently from 764dd84 to 3a5c4c4 Compare March 29, 2025 02:29
@hugary1995 hugary1995 force-pushed the neml2_build_script branch from ad9b655 to e3694b0 Compare May 8, 2025 13:30
@moosebuild
Copy link
Contributor

Job Coverage, step Verify coverage on 087cffa wanted to post the following:

The following coverage requirement(s) failed:

  • Failed to generate chemical_reactions coverage rate (required: 92.0%)
  • Failed to generate contact coverage rate (required: 87.0%)
  • Failed to generate electromagnetics coverage rate (required: 94.0%)
  • Failed to generate external_petsc_solver coverage rate (required: 84.0%)
  • Failed to generate fluid_properties coverage rate (required: 84.0%)
  • Failed to generate fsi coverage rate (required: 85.0%)
  • Failed to generate functional_expansion_tools coverage rate (required: 81.0%)
  • Failed to generate geochemistry coverage rate (required: 96.0%)
  • Failed to generate heat_transfer coverage rate (required: 87.0%)
  • Failed to generate level_set coverage rate (required: 85.0%)
  • Failed to generate misc coverage rate (required: 32.0%)
  • Failed to generate navier_stokes coverage rate (required: 77.0%)
  • Failed to generate optimization coverage rate (required: 86.0%)
  • Failed to generate peridynamics coverage rate (required: 77.0%)
  • Failed to generate phase_field coverage rate (required: 85.0%)
  • Failed to generate porous_flow coverage rate (required: 95.0%)
  • Failed to generate ray_tracing coverage rate (required: 93.0%)
  • Failed to generate rdg coverage rate (required: 63.0%)
  • Failed to generate reactor coverage rate (required: 90.0%)
  • Failed to generate scalar_transport coverage rate (required: 81.0%)
  • Failed to generate solid_mechanics coverage rate (required: 84.0%)
  • Failed to generate solid_properties coverage rate (required: 83.0%)
  • Failed to generate stochastic_tools coverage rate (required: 88.0%)
  • Failed to generate subchannel coverage rate (required: 87.0%)
  • Failed to generate thermal_hydraulics coverage rate (required: 88.0%)
  • Failed to generate xfem coverage rate (required: 80.0%)

hugary1995 and others added 11 commits May 19, 2025 13:17
This update mainly does two things:
- Switch neml2 from gnu-make to update_and_rebuild_neml2.sh
- Add support for work dispatchers

The switch to update_and_rebuild_neml2.sh is needed because
- NEML2 could be bringing in some additional dependencies in the future
- NEML2 may generate files at configure time
- This makes it easier to build binaries and ship NEML2 in containers

While the same can be managed by the MOOSE make-based build system, it is easier to maintain and manage if we just rely on NEML2's own CMake scripts, in the long run.

List of changes
- Added scripts/update_and_rebuild_neml2.sh
- Update neml2.mk
- Update neml2 submodule
- Add support for dispatchers
- Add documentation and tests for dispatchers
- Handle default dtype; we no longer manipulate torch default dtype outside NEML2 region
- Fix --parse-neml2-only cli arg

ref idaholab#29579

Co-authored-by: Logan Harbour <[email protected]>
@idaholab idaholab deleted a comment from moosebuild May 19, 2025
@hugary1995 hugary1995 force-pushed the neml2_build_script branch from da571f1 to a3e085e Compare May 19, 2025 21:43
@hugary1995 hugary1995 force-pushed the neml2_build_script branch from a3e085e to 1c927f4 Compare May 20, 2025 17:44
@moosebuild
Copy link
Contributor

Job Precheck, step Versioner verify on 1c927f4 wanted to post the following:

Versioner templates

Found 16 templates, 0 failed

Versioner influential files

Found 56 influential files, 2 changed, 5 added, 0 removed

package status file
moose-dev CHANGE apptainer/moose-dev.def
moose-dev CHANGE conda/moose-dev/meta.yaml
moose-dev NEW framework/contrib/neml2
moose-dev NEW scripts/configure_neml2.sh
moose-dev NEW scripts/configure_wasp.sh
moose-dev NEW scripts/update_and_rebuild_neml2.sh
moose-dev NEW scripts/update_and_rebuild_wasp.sh

Versioner versions

Found 10 packages, 1 changed, 0 failed

package status hash to hash version to version
moose-dev CHANGE 5500deb 24fdce3 2025.05.13 2025.05.20

@moosebuild
Copy link
Contributor

Job Clang min debug on 1c927f4 : invalidated by @hugary1995

unrelated timeout -- let's retry

@loganharbour loganharbour merged commit 603472b into idaholab:next May 21, 2025
76 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR: Failed but allowed PR: Updates packages Pull requsets that update versioner packahges

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants