Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

WRF and WPS CMAKE suggestion

William.Hatheway

Active member
Utilizing WRF and WPS configure_new options is very straight forward and useful. The CMAKE method is very simple once you get an understanding of it.

However, I have noticed some discrepancies between the two configure_new and compile_new when it comes to the preselected stanza.

Below are the two different configure_new:

Code:
Using default install directory : /home/workhorse/WRF_Intel/WRFV4.6.1/install
0   Linux         gfortran    /    gcc         /    mpif90      /    mpicc      GNU (gfortran/gcc)
1   Linux         ifx         /    icx         /    mpif90      /    mpicc      INTEL (ifx/icx) : oneAPI LLVM

Code:
0   Linux         gfortran    /    gcc         /    mpif90      /    mpicc      gfortran
1   Linux         ifx         /    icx         /    mpif90      /    mpicc      Intel oneAPI compilers

The first one is for WRF and the second for WPS. When manually selecting the options there is no issue, but when using the preselect stanza method of cmake -p the stanza calls are different. For simplicity I suggest making them match for ease of use.

What are your thoughts? @islas
 
Last edited:
Thanks for the ping. This thread did slip past me.

The difference comes from the different stanza conventions and names between WRF and WPS. In WRF there is an actual description field composed of "<name> ($SFC/$SCC) <other stuff>", and in WPS there is no "official" description per stanza so the description is pulled from the comments.

I think what can be done is to augment the generated WPS stanza description to append ($SFC/$SCC) to the end so that preselection can at least be somewhat consistent in (fortran/c) compiler description. This won't make them identical but close enough that one could generally select using just the compiler names, save for when their are multiple instances of the fortran/c compiler pair and differ in other portions of the description.
 
Thanks for the ping. This thread did slip past me.

The difference comes from the different stanza conventions and names between WRF and WPS. In WRF there is an actual description field composed of "<name> ($SFC/$SCC) <other stuff>", and in WPS there is no "official" description per stanza so the description is pulled from the comments.

I think what can be done is to augment the generated WPS stanza description to append ($SFC/$SCC) to the end so that preselection can at least be somewhat consistent in (fortran/c) compiler description. This won't make them identical but close enough that one could generally select using just the compiler names, save for when their are multiple instances of the fortran/c compiler pair and differ in other portions of the description.
That makes sense to me, that way you could issue a command for the compiler names
 
Top