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

Support parallel Make in Legacy build system #686

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

rcabell
Copy link
Collaborator

@rcabell rcabell commented Feb 23, 2023

TYPE: enhancement

KEYWORDS: makefiles, build

SOURCE: WRF-Hydro Team @ NCAR

DESCRIPTION OF CHANGES:

Update dependencies and syntax across Makefiles to support parallel Make (make -j). New defaults in compile_offline_NoahMP.sh is to use 4 Make jobs, overridable with $WRF_HYDRO_MAKE_JOBS.

ISSUE:

Fixes #685

TESTS CONDUCTED: Regression tests localy

NOTES: Leaving this as draft, as we may want to:

  • change the default number of Make jobs
  • remove recursive calls to$(MAKE) in favor of using Makefile-includes

* Correct / add dependencies
* Remove `ar` command from individual compiles to eliminate parallel
  race condition and increase efficiency by doing `ar` with all objects
  from a directory
* Add a default `make -j 4` parallel build and an optional
  $WRF_HYDRO_MAKE_JOBS variable to specify a specific job count
@scrasmussen
Copy link
Member

Rebased parallel-build and saved a copy of the pre-rebased version on my fork just in case I messed something up! Will add my review tomorrow 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support parallel Make in Legacy build system
2 participants