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

multiple compiler support broken in newcase and/or setup scripts #1344

Closed
worleyph opened this issue Mar 24, 2017 · 5 comments · Fixed by #1321
Closed

multiple compiler support broken in newcase and/or setup scripts #1344

worleyph opened this issue Mar 24, 2017 · 5 comments · Fixed by #1321

Comments

@worleyph
Copy link
Contributor

worleyph commented Mar 24, 2017

a) ./create_new case followed by ./case.setup with -compiler intel and with -compiler pgi on Titan generates identical Macros.make files (the pgi version, I think).

The same thing occurs on Edison, comparing -compiler gnu with -compiler intel (don't know which one it generates, probably intel?)

@rljacob indicates that a similar issue occurs on Anvil.

(The compiler selection is correction in env_build.xml.)

b) the env_mach_specific.xml script generated (from config_machines.xml) on Titan has hardcoded paths for NETCDFROOT and PNETCDFROOT that point at compiler specific locations. This needs to be moved into the compiler-specific logic. Don't know if this is true for other systems as well or not.

@rljacob
Copy link
Member

rljacob commented Mar 24, 2017

Yes this happens on Anvil with current master comparing default (intel) and --compiler gnu.

@worleyph
Copy link
Contributor Author

Note that this is critical because members of both ocn and atm teams are using the intel compiler for their runs on titan, while much of the development is still using pgi. Without this, Titan support is still missing.

@jgfouca
Copy link
Member

jgfouca commented Mar 24, 2017

OK, I will look at it today. It's probably an easy fix.

@jgfouca
Copy link
Member

jgfouca commented Mar 24, 2017

@worleyph I fixed (b) in my fixes PR. I am not clear on (a) since intel build seemed to work fine. Are you saying that changing the compiler with case.setup is what's broken?

@rljacob
Copy link
Member

rljacob commented Mar 24, 2017

If you look closely, the --intel is quietly building with the pgi options. Pgi works so everything seems to work. Compare the Macros.make file between the same case with 2 different compilers. They should be very different.

worleyph pushed a commit that referenced this issue Mar 26, 2017
Restore Titan support after CIME5.2 merge. A number of issues prevented successful create, set-up, build and run phases on Titan after the merge of CIME5.2. Even with these resolved, some functionality was lost, e.g. support for using a different number of MPI tasks per node for nonoverlapping components and support for more than one compiler. Finally, support for netcdf4 files was missing when using PGI.

    Remove CESM_REPO.
    Add better support for netcdf and pnetcdf in config*.xml .
    Use findNetcdf.cmake from pio2 in pio1.
    Use newer cmake, required by pio2.
    Fix aprun command construction.
    Fix Macro maker, to enable multiple compiler support.
    Update modules and paths to enable netcdf4 support and multiple compiler support.

Fixes #1327
Fixes #1330
Fixes #1344

Also, (already fixed, but verified here)

Fixes #1239

Testing has focused on production-like cases, including low resolution water cycle and high resolution GMPAS, both with and without the v3 MPAS meshes and with a number of different PE layouts. acme_developer is not yet working, for reasons distinct from the pull request, and without these changes, progress will not be possible on getting the acme_developer to work again.

A unit test was added for the updated aprun command construction capability, and this was passed.

[BFB]
agsalin pushed a commit that referenced this issue May 1, 2017
simplify netcdf lib args on hobart

Using nf-config is overly complicated and in this case unnecessary, remove it.

Test suite: scripts_regression_tests + SMS.f19_g16.X for all supported compilers on hobart
Test baseline:
Test namelist changes:
Test status: bit for bit
Fixes #1344

User interface changes?:

Code review: Bill Sacks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants