Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Issue building pio and processor outline question

Dear Forum Members,

I am trying to build CESM using Intel compilers, openmpi and netcdf 3.6 (build with Intel compiler) on our 64bit linux cluster (nodes with 48 processors each).

However during the compiling process I run into issues with the pio module. I do not intend to use parallel input/output and hence opted for the netcdf 3 version.
Is it still necessary to build the pio module? If not, how do I switch this option off?

It seems the compiler gets the correct options:


Code:
Machine=x86_64
OS=Linux
using NETCDF_PATH from environment
configure: WARNING: PNETCDF_PATH not found in environment,                            defaulting to /usr/local/pnetcdf
configure: WARNING: pnetcdf.inc not found in PNETCDF_PATH/include                              disabling pnetcdf support 
configure: WARNING: libpnetcdf.a not found in PNETCDF_PATH/lib                              disabling pnetcdf support 
checking Fortran 90 support for sizeof()... yes


However, I still run into a lot of pointer issues with the pio module, e.g. a short example from the error messages:


Code:
pio_msg_callbacks.F90(13): error #6457: This derived type name has not been declared.   [FILE_DESC_T]
  type(file_desc_t), pointer :: file
-------^
pio_msg_callbacks.F90(22): error #6404: This name does not have a type, and must have an explicit type.   [FILE]
  file=> lookupfile(fh)
--^
pio_msg_callbacks.F90(22): error #6795: The target must be of the same type and kind type parameters as the pointer.   [FILE]
  file=> lookupfile(fh)
--^
pio_msg_callbacks.F90(28): error #6285: There is no matching specific subroutine for this generic subroutine call.   [PIO_CLOSEFILE]
     call pio_closefile(file)
----------^
pio_msg_callbacks.F90(33): error #6284: There is no matching specific function for this generic function reference.   [PIO_DEF_VAR]
     ierr = pio_def_var(file, name, type, dimids, vardesc)
------------^
pio_msg_callbacks.F90(39): error #6284: There is no matching specific function for this generic function reference.   [PIO_INQ_VARNDIMS]
     ierr = pio_inq_varndims(file, id, len)
------------^
pio_msg_callbacks.F90(41): error #6284: There is no matching specific function for this generic function reference.   [PIO_INQ_VARNATTS]
     ierr = pio_inq_varnatts(file, id, len)
------------^


Further, I wanted to ask experienced users which processor layouts are reasonable configurations for stand-alone CAM4 runs on either 2 degree or 1 degree horizontal resolution?
I am able to use a maximum of 48 processors (1 node) per run.

Thank you very much in advance!
 

eaton

CSEG and Liaisons
Thanks for the reply! I tried the suggested source modifications in the other thread as bug fixes, however I still get these errors in many more pio subroutines than the previous poster.

Are these problems fixed when using a newer Ifort version (13.0)?

Thanks!
 

jedwards

CSEG and Liaisons
Staff member
> Are these problems fixed when using a newer Ifort version (13.0)?

Yes, please try again with the newer intel compiler.
 
Top