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

Fix unit test netCDF detection and NAG support. #25

Merged
merged 2 commits into from
Jul 13, 2015

Conversation

quantheory
Copy link
Member

These were the changes that I needed to be able to get the unit tests to build and pass with NAG on my CGD desktop. Note two possible sources of breakage:

  1. NAG on goldbach is broken by the removal of the -kind=byte flag. I don't think that this is a big problem because goldbach is being decommissioned this week. When we add a port to the successor machine, we'll have to make sure to link to the appropriate library, and everything should be well again. We should also bump to NAG 6.0. (I don't know if ISG even plans to keep NAG 5.3.1 around, but regardless, I don't think there's any real reason for us to support the older version given that this is our testing compiler.)
  2. My changes to FindNETCDF might break existing machines. It's not clear to me if there's really much of a risk here or not; I can test yellowstone and mira, but who knows what will happen on other machines. The changes are to fall back on using $NETCDF as a hint for the netCDF directory, which I think is pretty safe, and looking for libcurl if netCDF is using DAP, which may or may not be a problem.

This commit makes use of the FindNETCDF CMake module to detect the
netCDF library for unit tests. It also fixes some files that prevented
the tests from running with the NAG compiler.

This commit BREAKS support for NAG on goldbach, but that machine is on
its way out. When the successor machine comes online, a working NAG 6.0
port will be added.

Testing:

    Test suite: Unit tested only.
    Baseline: N/A
    Namelist changes: None
    Status: bit for bit

Code reviews:

    None yet.
Since pFUnit manages MPI itself, it's difficult to write the unit tests
to work with both pFUnit built with MPI, and with serial pFUnit and
mpi-serial. For now, we simply require use of a parallel pFUnit and an
MPI compiler.

Testing:

    Test suite: Unit tested only
    Baseline: N/A
    Namelist changes: None
    Status: bit for bit

Code reviews:

    None yet.
@quantheory quantheory force-pushed the cime_unit_test_cleanup branch from 53f3c26 to d007e2e Compare June 18, 2015 12:54
@jedwards4b
Copy link

Hi Sean,

If we build all of the libraries consistently I don't think we should need
the kind=byte flag?

On Tue, Jun 16, 2015 at 3:00 PM, Sean Patrick Santos <
notifications@github.com> wrote:

Assigned #25 #25 to
@jedwards4b https://github.com/jedwards4b.


Reply to this email directly or view it on GitHub
#25 (comment).

Jim Edwards

CESM Software Engineer
National Center for Atmospheric Research
Boulder, CO

@quantheory
Copy link
Member Author

Yep, that's the idea.

@jedwards4b
Copy link

Is this compatible with #28 ?

@quantheory
Copy link
Member Author

I believe so. I rebased the one on top of the other, on the branch where I am working on hobart.

@quantheory quantheory mentioned this pull request Jul 13, 2015
@jedwards4b jedwards4b merged commit d007e2e into CESM-Development:master Jul 13, 2015
jedwards4b added a commit to jedwards4b/cime that referenced this pull request Jan 15, 2016
Fixes to get the nightly tests to run through on Caldera with serial MPI
gold2718 pushed a commit to gold2718/cime that referenced this pull request Oct 19, 2023
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.

2 participants