newbie errors

jabencke at ncsu.edu jabencke at ncsu.edu
Tue Apr 6 08:45:11 CDT 2004


I'm not sure what's causing the errors I'm having, listed below.  I'm
trying to baby step here and just create the file to start things off. 
Below the errors is the code that causes the problem.  It's repeated 8
times because it's an 8 processor test job.  Any help would be fantastic.

 Can not open/create file

 Can not open/create file

 Can not open/create file

 Can not open/create file

 Can not open/create file

-1073749200: MPI_File_open error = Intercommunicator is not allowed
 Can not open/create file

-1073746896: MPI_File_open error = Intercommunicator is not allowed
 Can not open/create file

-1073751120: MPI_File_open error = Intercommunicator is not allowed
 Can not open/create file

-1073747536: MPI_File_open error = Intercommunicator is not allowed
-1073749456: MPI_File_open error = Intercommunicator is not allowed
-1073746512: MPI_File_open error = Intercommunicator is not allowed
-1073750224: MPI_File_open error = Intercommunicator is not allowed
-1073747248: MPI_File_open error = Intercommunicator is not allowed


Code here:

      subroutine prin(prefix)

! Outputs ascii array if ndim = 1, else if ndim > 1 then
! write out hdf5 data file containing all variables (plus time).

      include 'pnetcdf.inc'
      include 'global.h'
      include 'sweep.h'
      include 'zone.h'

      ! integer(HID_T) :: hdf_file !file id for hdf file
      integer :: hdf_error !error var for hdf5 file

      character(LEN=1) :: char
      character(LEN=1) :: coord
      character(LEN=4) :: tmp1, tmp2
      character(LEN=5) :: prefix
      character(LEN=15) :: filename

!     Added (Fortran 90 style) for hdf5 stuff

      ! INTEGER(HID_T) :: dsp_id  ! Dataspace ID
      ! INTEGER(HID_T) :: dset_id !Dataset ID
      INTEGER, DIMENSION(3) :: dims
      INTEGER, DIMENSION(3) :: dimids
      INTEGER :: status, ncid
      INTEGER :: xDimID, yDimID, zDimID
      INTEGER :: yMaxDimID, tsDimID
      INTEGER :: density_varID, pressure_varID
      INTEGER :: XVelocity_varID, YVelocity_varID, ZVelocity_varID
      INTEGER :: XScale_varID, YScale_varID, ZScale_varID, time_varID

!------------------------------------------------------------------------------

! Create filename from integer nfile (in global.h) and prefix such that
filename
! looks like prefx.1000 where 1000 is the value of nfile

      write(tmp1,910) nfile
      write(tmp2,910) mype
 910  format(i4)
      do i = 1, 4
         if ((tmp1(i:i)) .eq. ' ') tmp1(i:i) = '0'
         if ((tmp2(i:i)) .eq. ' ') tmp2(i:i) = '0'
      enddo
      filename = prefix(1:5) // '_' // tmp1(1:4) // '.' // tmp2(1:4)
      nfile = nfile + 1

      if (ndim .eq. 1) then

! Keep 1D output simple, just write out in ascii...
        open(unit=3,file=filename,form='formatted')
        do i = 1, imax
          write(3, 1003) zxa(i), zro(i,1,1),zpr(i,1,1), zux(i,1,1)
        enddo
        close(3)

      else


!     Initialize Dimensions
      dims(1) = imax
      dims(2) = js
      if(ndim.eq.3) dims(3) = kmax

      status = nfmpi_create(MPI_COMM_WORLD, filename,
     &                      MPI_INFO_NULL, nf90_Clobber, ncid)



      if (status /= nf90_NoErr ) print *, nfmpi_strerror(status)

      ! always a necessary statment to flush output
      status = nfmpi_close(ncid)

      endif

      write(8,6000) filename, time, ncycle

 6000 format('Wrote ',a10,' to disk at time =',1pe12.5,' (ncycle =',
     &        i6,')')
 1003 format(' ',4e13.5)

      return
      end





More information about the parallel-netcdf mailing list