Skip to content

update WRF easyblock to allow serial HDF5 + pick up on parallel netCDF#1592

Merged
damianam merged 4 commits intoeasybuilders:developfrom
andreas-h:wrf-pnc
Nov 22, 2018
Merged

update WRF easyblock to allow serial HDF5 + pick up on parallel netCDF#1592
damianam merged 4 commits intoeasybuilders:developfrom
andreas-h:wrf-pnc

Conversation

@andreas-h
Copy link
Copy Markdown
Contributor

  • optionally build WRF with PnetCDF support
  • fix netCDF-Fortran dependency problems in WPS

* optionally build WRF with PnetCDF support
* fix netCDF-Fortran dependency problems in WPS
andreas-h added a commit to andreas-h/easybuild-easyconfigs that referenced this pull request Nov 21, 2018
Using the easyblocks from easybuilders/easybuild-easyblocks#1592, this
fixes build problems occurring on some platforms.  I can successfully
build on Debian/Buster (my laptop) using foss-2018b, and on our HPC
using both intel-2018b and foss-2018b.
@damianam
Copy link
Copy Markdown
Member

@andreas-h the PR lgtm, but I'd like to have in the comments a reference to why these variables are needed. Do you think you can add that?

Comment thread easybuild/easyblocks/w/wrf.py
@andreas-h
Copy link
Copy Markdown
Contributor Author

  1. WPS: I wasn't able to figure out how to tell WPS the correct path to netCDF-Fortran otherwise. Build was working properly using intel-2018b, but with foss I was running into issues where netcdff wasn't found. This was the only way I could fix that.

  2. the HDF5 env variable probably isn't strictly needed, but ./configure was complaining about it not being set:

    HDF5 not set in environment. Will configure WRF for use without.

  3. PnetCDF is an optional dependency. Setting the PNETCDF env variable enables output using ParallelNetCDF.

  4. EM_CORE and NMM_CORE variables control which dynamical model core is being built. You can only choose one of them. If nothing is explicitly set, EM_CORE is being built.
    I agree that optimally, one would make this configurable and add (yet) another version suffix to indicate the choice.However, I have no experience at all with NMM_CORE and so didn't want to do that. I'm working on a PR to optionally build the WRF-Chem chemistry code inside the wrf EasyBlock and that one only works with EM_CORE anyways.

Now that I think about it, maybe it'd be best to not set the _CORE variables explicitly here. I would then only do that in the wrf-chem stuff I'm developing, since there it's not optional any more. Apart from that I don't think that any additional comments help. I can add some if you think it's needed.

Comment thread easybuild/easyblocks/w/wps.py Outdated
Copy link
Copy Markdown
Member

@damianam damianam left a comment

Choose a reason for hiding this comment

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

lgtm. Going in, thanks!

@damianam damianam merged commit 6f50c09 into easybuilders:develop Nov 22, 2018
Comment thread easybuild/easyblocks/w/wrf.py
@boegel boegel added this to the 3.8.0 milestone Nov 23, 2018
@boegel boegel changed the title ENH: some tweaks for WRFv4 and WPSv4 update WRF easyblock to allow serial HDF5 + pick up on parallel netCDF Nov 23, 2018
@andreas-h
Copy link
Copy Markdown
Contributor Author

andreas-h commented Nov 23, 2018 via email

andreas-h added a commit to andreas-h/easybuild-easyconfigs that referenced this pull request Nov 23, 2018
@andreas-h andreas-h deleted the wrf-pnc branch November 23, 2018 20:42
bartoldeman pushed a commit to ComputeCanada/easybuild-easyblocks that referenced this pull request Dec 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants