One possibility is your HDF5 library was not built with parallel I/O support.
NetCDF checks this and automatically disable parallel I/O features.
Please check the file libhdf5.settings under
/cm/shared/libraries/intel_build/hdf5-1.8.12-intel-16.par/lib
You should see the following lines.
Features:
---------
Parallel HDF5: yes
Wei-keng
On May 4, 2017, at 2:02 PM, Wei-keng Liao wrote:
>
> Could you try add "use netcdf" in your program, if it is not already there?
>
> Wei-keng
>
> On May 4, 2017, at 11:54 AM, Anton Shterenlikht wrote:
>
>>> From: Daniel Neumann <daniel.neumann@xxxxxxxxxxxxxxxxx>
>>>
>>> Hi Anton,
>>>
>>> Does the error arise on the first occurrence of a function or constant
>>> of the netCDF library? If yes, it looks to me that the compiler doesn't
>>> know about your netCDF library.
>>>
>>> Which flags (include and library flags) do you use to include the netcdf
>>> library? How does your compiler call look like?
>>>
>>> It should be something like:
>>>
>>> mpiifort -c
>>> -I/cm/shared/libraries/intel_build/netcdf-4-intel-16.par/include -o
>>> cgca_m2netcdf.o cgca_m2netcdf.f90
>>
>> Daniel, thank you for taking the time.
>>
>> Yes, this is essentially what I do.
>> I also use ifort -coarray switch.
>> This is the full output:
>>
>> newblue1> mpiifort -coarray=distributed -c
>> -I/cm/shared/libraries/intel_build/netcdf-4-intel-16.par/include
>> cgca_m2netcdf.f90
>> cgca_m2netcdf.f90(157): error #6404: This name does not have a type, and
>> must have an explicit type. [NF90_NETCDF4]
>> call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
>> -----------------------------------^
>> cgca_m2netcdf.f90(157): error #6404: This name does not have a type, and
>> must have an explicit type. [NF90_MPIIO]
>> call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
>> ------------------------------------------------^
>> cgca_m2netcdf.f90(157): warning #7319: This argument's data type is
>> incompatible with this intrinsic procedure; procedure assumed EXTERNAL.
>> [IOR]
>> call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
>> -----------------------------------^
>> cgca_m2netcdf.f90(157): error #6404: This name does not have a type, and
>> must have an explicit type. [IOR]
>> call check( nf90_create(fname, ior(nf90_netcdf4,nf90_mpiio), ncid, &
>> -------------------------------^
>> cgca_m2netcdf.f90(158): error #6627: This is an actual argument keyword
>> name, and not a dummy argument name. [COMM]
>> comm=comm, info=MPI_INFO_NULL))
>> -------^
>> cgca_m2netcdf.f90(158): error #6627: This is an actual argument keyword
>> name, and not a dummy argument name. [INFO]
>> comm=comm, info=MPI_INFO_NULL))
>> ------------------^
>> cgca_m2netcdf.f90(176): error #6404: This name does not have a type, and
>> must have an explicit type. [NF90_DEF_VAR_FILL]
>> call check ( nf90_def_var_fill(ncid, varid, 1, 1) )
>> -------------^
>> cgca_m2netcdf.f90(184): error #6404: This name does not have a type, and
>> must have an explicit type. [NF90_COLLECTIVE]
>> call check( nf90_var_par_access(ncid, varid, nf90_collective) )
>> ---------------------------------------------^
>> cgca_m2netcdf.f90(184): error #6404: This name does not have a type, and
>> must have an explicit type. [NF90_VAR_PAR_ACCESS]
>> call check( nf90_var_par_access(ncid, varid, nf90_collective) )
>> ------------^
>> compilation aborted for cgca_m2netcdf.f90 (code 1)
>> newblue1>
>>
>> Again, the include dir seems to contain the right files:
>>
>> newblue1> ls -al
>> /cm/shared/libraries/intel_build/netcdf-4-intel-16.par/include
>> total 680
>> drwxr-xr-x 2 root root 4096 Mar 8 15:07 .
>> drwxr-xr-x 6 root root 4096 Mar 8 14:45 ..
>> -rw-r--r-- 1 root root 58489 Mar 8 14:45 netcdf.h
>> -rw-r--r-- 1 root root 42609 Mar 8 15:07 netcdf.inc
>> -rw-r--r-- 1 root root 214523 Mar 8 15:07 netcdf.mod
>> -rw-r--r-- 1 root root 1180 Mar 8 14:45 netcdf_par.h
>> -rw-r--r-- 1 root root 1382 Mar 8 15:07 typesizes.mod
>> newblue1>
>>
>> Thanks
>>
>> Anton
>>
>> _______________________________________________
>> NOTE: All exchanges posted to Unidata maintained email lists are
>> recorded in the Unidata inquiry tracking system and made publicly
>> available through the web. Users who post to any of the lists we
>> maintain are reminded to remove any personal information that they
>> do not want to be made public.
>>
>>
>> netcdfgroup mailing list
>> netcdfgroup@xxxxxxxxxxxxxxxx
>> For list information or to unsubscribe, visit:
>> http://www.unidata.ucar.edu/mailing_lists/
>
> _______________________________________________
> NOTE: All exchanges posted to Unidata maintained email lists are
> recorded in the Unidata inquiry tracking system and made publicly
> available through the web. Users who post to any of the lists we
> maintain are reminded to remove any personal information that they
> do not want to be made public.
>
>
> netcdfgroup mailing list
> netcdfgroup@xxxxxxxxxxxxxxxx
> For list information or to unsubscribe, visit:
> http://www.unidata.ucar.edu/mailing_lists/