<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Sure, then it will not be in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141139#M137216</link>
    <description>&lt;P&gt;Sure, then it will not be parallel, but before you run your program parallel you have to make sure that the serial version is correct, preferrably with more than compiler. Then you can start running it parallel.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 06 Aug 2019 21:51:45 GMT</pubDate>
    <dc:creator>Juergen_R_R</dc:creator>
    <dc:date>2019-08-06T21:51:45Z</dc:date>
    <item>
      <title>OPENMP INTEL FOTRAN RUN-TIME ERROR:forrtl: severe (40): recursive I/O operation, unit -1, file unknown</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141130#M137207</link>
      <description>&lt;P&gt;Hi, I compiled a openmp program with intel fortran&amp;nbsp;successfully, and this is my macros and Makefile:&lt;/P&gt;&lt;P&gt;macros&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1 .IGNORE:&lt;BR /&gt;&amp;nbsp; 2 RM &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;= &amp;nbsp; &amp;nbsp; &amp;nbsp; rm -f&lt;BR /&gt;&amp;nbsp; 3 COMPILER90= &amp;nbsp; &amp;nbsp; ifort -openmp #-fbounds-check&lt;BR /&gt;&amp;nbsp; 4 FREESOURCE= &amp;nbsp; &amp;nbsp; -free #-ffree-form&lt;BR /&gt;&amp;nbsp; 5 F90FLAGS &amp;nbsp;= &amp;nbsp; &amp;nbsp; -c -I/home/2015051066/soft/netcdf/include&lt;BR /&gt;&amp;nbsp; 6 MODFLAG =&lt;BR /&gt;&amp;nbsp; 7 LDFLAGS = &amp;nbsp; &amp;nbsp; &amp;nbsp; -O3&lt;BR /&gt;&amp;nbsp; 8 CPP &amp;nbsp; &amp;nbsp; = &amp;nbsp; &amp;nbsp; &amp;nbsp; cpp&lt;BR /&gt;&amp;nbsp; 9 CPPFLAGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;= &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-P -traditional&lt;BR /&gt;&amp;nbsp;10 #F90FLAGS &amp;nbsp;= &amp;nbsp; &amp;nbsp; -c -I/cm/shared/apps/netcdf/gcc/64/4.5.0/include&lt;BR /&gt;&amp;nbsp;11 #F90FLAGS &amp;nbsp;= &amp;nbsp; &amp;nbsp; -c -I/cm/shared/uaapps/netcdf/fortran/gcc/4.4.4/include&lt;BR /&gt;&amp;nbsp;12 #F90FLAGS &amp;nbsp;= &amp;nbsp; &amp;nbsp; -c -I/home/u4/niug/netcdf-fort-4.4.4/include&lt;BR /&gt;&amp;nbsp;13 RM = rm -f&lt;BR /&gt;&amp;nbsp;14 RM = rm -f&lt;BR /&gt;&amp;nbsp;15 RM = rm -f&lt;BR /&gt;&amp;nbsp;16 RM = rm -f&lt;BR /&gt;&amp;nbsp;17 RM = rm -f&lt;/P&gt;&lt;P&gt;Makefile&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1 # Makefile&lt;BR /&gt;&amp;nbsp; 2 #&lt;BR /&gt;&amp;nbsp; 3 #INCLUDES=&lt;BR /&gt;&amp;nbsp; 4 .SUFFIXES:&lt;BR /&gt;&amp;nbsp; 5 .SUFFIXES: .o .f&lt;BR /&gt;&amp;nbsp; 6&lt;BR /&gt;&amp;nbsp; 7 include ../macros&lt;BR /&gt;&amp;nbsp; 8&lt;BR /&gt;&amp;nbsp; 9 MAINOBJ1 = ../IO_code/Noah_driver.o&lt;BR /&gt;&amp;nbsp;10&lt;BR /&gt;&amp;nbsp;11 OBJS = \&lt;BR /&gt;&amp;nbsp;12 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ../Noah_code/module_Noahlsm.o \&lt;BR /&gt;&amp;nbsp;13 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ../Noah_code/module_Noahlsm_param_init.o \&lt;BR /&gt;&amp;nbsp;14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ../Noah_code/module_Noahlsm_utility.o \&lt;BR /&gt;&amp;nbsp;15 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ../Noah_code/module_date_utilities.o \&lt;BR /&gt;&amp;nbsp;16 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ../IO_code/module_Noah_NC_output.o \&lt;BR /&gt;&amp;nbsp;17 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ../IO_code/module_Noahlsm_gridded_input.o&lt;BR /&gt;&amp;nbsp;18&lt;BR /&gt;&amp;nbsp;19 CMD = Noah&lt;BR /&gt;&amp;nbsp;20 all: &amp;nbsp; &amp;nbsp;$(CMD)&lt;BR /&gt;&amp;nbsp;21&lt;BR /&gt;&amp;nbsp;22 Noah: $(OBJS) $(MAINOBJ1)&lt;BR /&gt;&amp;nbsp;23 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; @echo ""&lt;BR /&gt;&amp;nbsp;24 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; $(COMPILER90) -o $(@) $(OBJS) $(MAINOBJ1) -L/home/2015051066/soft/netcdf/lib -lnetcdff -lnetcdf&lt;BR /&gt;&amp;nbsp;25 # &amp;nbsp; &amp;nbsp; &amp;nbsp; $(COMPILER90) -o $(@) $(OBJS) $(MAINOBJ1) -L/cm/shared/apps/netcdf/gcc/64/4.5.0/lib -lnetcdff -lnetcdf&lt;BR /&gt;&amp;nbsp;26 # &amp;nbsp; &amp;nbsp; &amp;nbsp; $(COMPILER90) -o $(@) $(OBJS) $(MAINOBJ1) -L/cm/shared/uaapps/netcdf/fortran/gcc/4.4.4/lib -lnetcdff -lnetcdf&lt;BR /&gt;&amp;nbsp;27 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; @echo ""&lt;BR /&gt;&amp;nbsp;28&lt;BR /&gt;&amp;nbsp;29 # This command cleans up&lt;BR /&gt;&amp;nbsp;30&lt;BR /&gt;&amp;nbsp;31 clean:&lt;BR /&gt;&amp;nbsp;32 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rm ../IO_code/*mod ../IO_code/*.o&lt;BR /&gt;&amp;nbsp;33 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rm ../Noah_code/*mod ../Noah_code/*.o&lt;BR /&gt;&amp;nbsp;34 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rm $(CMD)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When I run the model with the pbs&amp;nbsp;script:&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1 #!/bin/sh -f&lt;BR /&gt;&amp;nbsp; 2 #PBS -N test&lt;BR /&gt;&amp;nbsp; 3 #PBS -m n&lt;BR /&gt;&amp;nbsp; 4 #PBS -l mem=1gb&lt;BR /&gt;&amp;nbsp; 5 #PBS -l nodes=1:ppn=28&lt;BR /&gt;&amp;nbsp; 6 nprocs=`wc -l &amp;lt; $PBS_NODEFILE`&lt;BR /&gt;&amp;nbsp; 7 cd $PBS_O_WORKDIR&lt;BR /&gt;&amp;nbsp; 8 #date&lt;BR /&gt;&amp;nbsp; 9 #mpirun -genv I_MPI_DEVICE ssm &amp;nbsp;-np $nprocs -hostfile $PBS_NODEFILE $PBS_O_WORKDIR/test.sh&lt;BR /&gt;&amp;nbsp;10 #cd /home/2014011989/noahmp/Run&lt;BR /&gt;&amp;nbsp;11 /usr/bin/time ./Noah &amp;gt;&amp;amp;out&lt;BR /&gt;&amp;nbsp;12 #date&lt;BR /&gt;&amp;nbsp;13&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The error is:&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1 &amp;nbsp;mdt, minute = 01010000&lt;BR /&gt;&amp;nbsp; 2 &amp;nbsp;INPUT LANDUSE = USGS&lt;BR /&gt;&amp;nbsp; 3 &amp;nbsp;LANDUSE TYPE = USGS FOUND &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;27 &amp;nbsp;CATEGORIES&lt;BR /&gt;&amp;nbsp; 4 &amp;nbsp;INPUT SOIL TEXTURE CLASSIFICAION = STAS&lt;BR /&gt;&amp;nbsp; 5 &amp;nbsp;SOIL TEXTURE CLASSIFICATION = STAS FOUND &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;19 &amp;nbsp;CATEGORIES&lt;BR /&gt;&amp;nbsp; 6 &amp;nbsp;successful initialize general model parameters&lt;BR /&gt;&amp;nbsp; 7 &amp;nbsp;------------- successful reading surface data ------------------&lt;BR /&gt;&amp;nbsp; 8 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30&lt;BR /&gt;&amp;nbsp; 9 &amp;nbsp; 0.3950000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4100000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4340000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4760000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4850000&lt;BR /&gt;&amp;nbsp;10 &amp;nbsp; 0.4390000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4040000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4640000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4650000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4060000&lt;BR /&gt;&amp;nbsp;11 &amp;nbsp; 0.4680000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4680000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.3950000 &amp;nbsp; &amp;nbsp; &amp;nbsp; 1.000000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.2000000&lt;BR /&gt;&amp;nbsp;12 &amp;nbsp; 0.4210000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.4680000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.2000000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.3390000 &amp;nbsp; &amp;nbsp; &amp;nbsp;0.0000000E+00&lt;BR /&gt;&amp;nbsp;13 &amp;nbsp; 0.0000000E+00 &amp;nbsp;0.0000000E+00 &amp;nbsp;0.0000000E+00 &amp;nbsp;0.0000000E+00 &amp;nbsp;0.0000000E+00&lt;BR /&gt;&amp;nbsp;14 &amp;nbsp; 0.0000000E+00 &amp;nbsp;0.0000000E+00 &amp;nbsp;0.0000000E+00 &amp;nbsp;0.0000000E+00 &amp;nbsp;0.0000000E+00&lt;BR /&gt;&amp;nbsp;15 &amp;nbsp;fini=arbitrary initialization&lt;BR /&gt;&amp;nbsp;16 &amp;nbsp;------------- successful initialization ------------------&lt;BR /&gt;&amp;nbsp;17 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1 &amp;nbsp; &amp;nbsp;1980 &amp;nbsp; &amp;nbsp; &amp;nbsp; 1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 0 &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&lt;BR /&gt;&amp;nbsp;18 &amp;nbsp;-------------------------------------------&lt;BR /&gt;&amp;nbsp;19 &amp;nbsp;READFORC: opening /home/2014011989/noahmp/Noah_data/forcings/1980/1980010100.nc&lt;BR /&gt;&amp;nbsp;20 &amp;nbsp;The model is losing(-)/gaining(+) fake water&lt;BR /&gt;&amp;nbsp;21 &amp;nbsp;ERRWAT = &amp;nbsp;-5.000397&lt;BR /&gt;&amp;nbsp;22 &amp;nbsp;ix,iy,WA,END_WB,BEG_WB,PRCP*DT,ECAN*DT,EDIR*DT,ETRAN*DT,RUNSRF*DT,RUNSUB*DT&lt;BR /&gt;&amp;nbsp;23 &amp;nbsp;The model is losing(-)/gaining(+) fake water&lt;BR /&gt;&amp;nbsp;24 forrtl: severe (40): recursive I/O operation, unit -1, file unknown&lt;BR /&gt;&amp;nbsp;25 �^H~[^@^@^@^@^@~@Y~W^@^@^@^@^@^@^@^@^@^@^@^@^@^@4.02user 2.11system 0:13.07elapsed 46%CPU (0avgtext+0avgdata 150056maxresiden &amp;nbsp; &amp;nbsp;t)k&lt;BR /&gt;&amp;nbsp;26 22032inputs+0outputs (0major+51064minor)pagefaults 0swaps&lt;BR /&gt;~&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is the problem from my wrong script? How to solve it?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you very much!&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 17:42:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141130#M137207</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-06T17:42:01Z</dc:date>
    </item>
    <item>
      <title>Does the error also appear</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141131#M137208</link>
      <description>&lt;P&gt;Does the error also appear when not using OpenMP? The message says it is recursive I/O, which is pretty obvious. So where does it happen in your code? You haven't shown any of your code. You should rather direct that question to the maintainer of the code.&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 17:52:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141131#M137208</guid>
      <dc:creator>Juergen_R_R</dc:creator>
      <dc:date>2019-08-06T17:52:03Z</dc:date>
    </item>
    <item>
      <title>When I use GFortran to</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141132#M137209</link>
      <description>&lt;P&gt;When I use GFortran to compile the code, it does not show these error. The maintainer of the code actually used GFortran&amp;nbsp;to compile the code, but I want to try intel FORTRAN. You said the error is obvious, I don't&amp;nbsp;understand what you meant. Can you tell me more?&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 20:04:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141132#M137209</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-06T20:04:30Z</dc:date>
    </item>
    <item>
      <title>Recursive I/O is when you</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141133#M137210</link>
      <description>&lt;P&gt;Recursive I/O is when you start an I/O operation on a unit when one is already in progress. The standard says:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;An input/output statement that is executed while another input/output statement is being executed is a recursive&lt;BR /&gt;input/output statement. A recursive input/output statement shall not identify an external unit that is identified&lt;BR /&gt;by another input/output statement being executed except that a child data transfer statement may identify its&amp;nbsp;&lt;BR /&gt;parent data transfer statement external unit.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;It may be that gfortran allows this as an extension. As noted, you have not shown your code so we don't know what your program is doing. Typically one sees this error if you reference a function in an I/O statement data list that also does I/O on the same unit (PRINT in your case).&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:22:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141133#M137210</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2019-08-06T21:22:13Z</dc:date>
    </item>
    <item>
      <title>Hi,</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141134#M137211</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I uploaded the file including OMP statement! But I did not find any write statement inside the OMP statement.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:26:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141134#M137211</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-06T21:26:34Z</dc:date>
    </item>
    <item>
      <title>This one at least</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141135#M137212</link>
      <description>&lt;P&gt;This one at least&lt;/P&gt;
&lt;PRE class="brush:fortran; class-name:dark;"&gt;         write(88,'(4i5,9f10.2)')iyloop,imloop,idloop,itime,cosz(ix,iy)&amp;amp;
                 ,soldn(ix,iy),lwdn(ix,iy),sfctmp(ix,iy)&amp;amp;
                 ,uu(ix,iy),prcp(ix,iy)*dt,q2(ix,iy)*1000,sfcprs(ix,iy)&amp;amp;
                 ,co2air(ix,iy)/sfcprs(ix,iy)*1.e6&lt;/PRE&gt;

&lt;P&gt;is inside an $OMP PARALLEL DO environment! And there maybe more as this is not the complete code. Again, do you see the problem without OpenMP?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:36:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141135#M137212</guid>
      <dc:creator>Juergen_R_R</dc:creator>
      <dc:date>2019-08-06T21:36:13Z</dc:date>
    </item>
    <item>
      <title>What do you mean without</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141136#M137213</link>
      <description>&lt;P&gt;What do you mean without OpenMP? The code I got just uses OpenMP.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:39:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141136#M137213</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-06T21:39:25Z</dc:date>
    </item>
    <item>
      <title>OpenMP is a set of pragmas</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141137#M137214</link>
      <description>&lt;P&gt;OpenMP is a set of pragmas (instruction for you how to distribute workers of your code on different threads). As you might have noted these statements all appear after exclamation marks, hence are just comments according to the Fortran standard. If you compile your code without openmp flags, it will be executed serially. Again my question: does it work then?&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:42:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141137#M137214</guid>
      <dc:creator>Juergen_R_R</dc:creator>
      <dc:date>2019-08-06T21:42:31Z</dc:date>
    </item>
    <item>
      <title>I am checking the write</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141138#M137215</link>
      <description>&lt;P&gt;I am checking the write statements now! But I want to compile it as a parallel program! If I do not use -openmp&amp;nbsp;option, it will not be a parallel program, right?&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:49:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141138#M137215</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-06T21:49:17Z</dc:date>
    </item>
    <item>
      <title>Sure, then it will not be</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141139#M137216</link>
      <description>&lt;P&gt;Sure, then it will not be parallel, but before you run your program parallel you have to make sure that the serial version is correct, preferrably with more than compiler. Then you can start running it parallel.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:51:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141139#M137216</guid>
      <dc:creator>Juergen_R_R</dc:creator>
      <dc:date>2019-08-06T21:51:45Z</dc:date>
    </item>
    <item>
      <title>I set up: export OMP_THREAD</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141140#M137217</link>
      <description>&lt;P&gt;I set up: export OMP_THREAD_NUM=1 and delete the write stament. However, when I ran the model, it still shows the error:&lt;/P&gt;&lt;P&gt;&amp;nbsp;The model is losing(-)/gaining(+) fake water&lt;BR /&gt;&amp;nbsp;ERRWAT = &amp;nbsp;-5.000022&lt;BR /&gt;&amp;nbsp;ix,iy,WA,END_WB,BEG_WB,PRCP*DT,ECAN*DT,EDIR*DT,ETRAN*DT,RUNSRF*DT,RUNSUB*DT&lt;BR /&gt;&amp;nbsp; &amp;nbsp; 71 &amp;nbsp; &amp;nbsp;85 &amp;nbsp; &amp;nbsp;19 &amp;nbsp; &amp;nbsp; 4510.00 &amp;nbsp; &amp;nbsp; 5131.98 &amp;nbsp; &amp;nbsp; 5137.00 &amp;nbsp; &amp;nbsp;0.0000 &amp;nbsp; &amp;nbsp;0.0000 &amp;nbsp; &amp;nbsp;0.0220 &amp;nbsp; &amp;nbsp;0.0000 &amp;nbsp; &amp;nbsp;0.0000 &amp;nbsp; &amp;nbsp;0.0000 &amp;nbsp; &amp;nbsp;0.0000 &amp;nbsp; &amp;nbsp;0.2453 &amp;nbsp; &amp;nbsp;0.3159 &amp;nbsp; &amp;nbsp;0.3588&lt;BR /&gt;forrtl: severe (40): recursive I/O operation, unit -1, file unknown&lt;BR /&gt;forrtl: severe (40): recursive I/O operation, unit -1, file unknown&lt;BR /&gt;0X&amp;#127;��{+) fake water&lt;BR /&gt;forrtl: severe (28): CLOSE error, unit 30, file "Unknown"&lt;BR /&gt;*** Error in `./Noah': free(): invalid pointer: 0x00002ba2522051db ***&lt;BR /&gt;forrtl: severe (40): recursive I/O operation, unit -1, file unknown&lt;BR /&gt;forrtl: severe (40): recursive I/O operation, unit -1, file unknown&lt;BR /&gt;Image &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PC &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Routine &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Line &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Source&lt;/P&gt;&lt;P&gt;Stack trace terminated abnormally.&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 21:54:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141140#M137217</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-06T21:54:49Z</dc:date>
    </item>
    <item>
      <title>This seems to be from this</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141141#M137218</link>
      <description>&lt;P&gt;This seems to be from this code, &lt;A href="https://ral.ucar.edu/solutions/products/noah-multiparameterization-land-surface-model-noah-mp-lsm" target="_blank"&gt;https://ral.ucar.edu/solutions/products/noah-multiparameterization-land-surface-model-noah-mp-lsm&lt;/A&gt;, at least loosely, but there are nowhere any OpenMP statements in the build instructions. Did you modify the original instructions, or the maintainers of the code? It would be a good idea to ask them about the portability of the code.&lt;/P&gt;</description>
      <pubDate>Tue, 06 Aug 2019 22:11:57 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141141#M137218</guid>
      <dc:creator>Juergen_R_R</dc:creator>
      <dc:date>2019-08-06T22:11:57Z</dc:date>
    </item>
    <item>
      <title>That is a good idea! Thank</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141142#M137219</link>
      <description>&lt;P&gt;That is a good idea! Thank you!&lt;/P&gt;</description>
      <pubDate>Wed, 07 Aug 2019 01:04:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141142#M137219</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-07T01:04:42Z</dc:date>
    </item>
    <item>
      <title>I/O done in parallel threads</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141143#M137220</link>
      <description>&lt;P&gt;I/O done in parallel threads may very well trigger this problem. If you really need to do I/O in a parallel section, enclose it in a critical section.&lt;/P&gt;</description>
      <pubDate>Wed, 07 Aug 2019 01:53:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141143#M137220</guid>
      <dc:creator>Steve_Lionel</dc:creator>
      <dc:date>2019-08-07T01:53:18Z</dc:date>
    </item>
    <item>
      <title>I am not sure about I/O code</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141144#M137221</link>
      <description>&lt;P&gt;I am not sure about I/O code because I have checked all write statements in parallel regions. But its still! &amp;nbsp;If I export OMP_NUM_THREADS=1, it works, but it is not a parallel run.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I attached all the code including OMP statements. Hope it can give more information&lt;/P&gt;</description>
      <pubDate>Wed, 07 Aug 2019 03:38:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141144#M137221</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-07T03:38:51Z</dc:date>
    </item>
    <item>
      <title>I wonder how I can find</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141145#M137222</link>
      <description>&lt;P&gt;I wonder how I can find recursive errors in the code about I/O code in parallel regions because I have checked all OMP statements and did not find any inside them. Is there some code or program to check it?&lt;/P&gt;</description>
      <pubDate>Wed, 07 Aug 2019 15:29:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141145#M137222</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-07T15:29:15Z</dc:date>
    </item>
    <item>
      <title>! *** EXAMPLE of critical</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141146#M137223</link>
      <description>&lt;PRE class="brush:fortran; class-name:dark;"&gt;! *** EXAMPLE of critical secion for write statement within parallel region
if(ix == int(nx/2) .and. iy == int(ny/2) ) then
  !$omp critical(write_88)
         write(88,'(4i5,9f10.2)')iyloop,imloop,idloop,itime,cosz(ix,iy)&amp;amp;
                 ,soldn(ix,iy),lwdn(ix,iy),sfctmp(ix,iy)&amp;amp;
                 ,uu(ix,iy),prcp(ix,iy)*dt,q2(ix,iy)*1000,sfcprs(ix,iy)&amp;amp;
                 ,co2air(ix,iy)/sfcprs(ix,iy)*1.e6
  !$omp end critical(write_88)
endif
&lt;/PRE&gt;

&lt;P&gt;*** note, the write statements will not be made in nested loop index order as they would for a serial (single threaded) application.&lt;/P&gt;
&lt;P&gt;You can use named critical sections, as used above, a write to unit 88 can overlap with a write to some other unit. You can use any arbitrary name that is not associated with any other global name (e.g. subroutine name, ...). An alternate typical name might be the name portion of the file being written as opposed to the unit number as used above.&lt;/P&gt;
&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
      <pubDate>Wed, 07 Aug 2019 15:33:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141146#M137223</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2019-08-07T15:33:03Z</dc:date>
    </item>
    <item>
      <title>I have a question about</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141147#M137224</link>
      <description>&lt;P&gt;I have a question about nested loop index. Do I have to wirte critical statements for nested loops that are not inside the OMP parallel region?&lt;/P&gt;</description>
      <pubDate>Wed, 07 Aug 2019 15:40:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141147#M137224</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-07T15:40:03Z</dc:date>
    </item>
    <item>
      <title>!$omp parallel do private(j</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141148#M137225</link>
      <description>&lt;P&gt;!$omp parallel do private(j)&lt;BR /&gt;do&amp;nbsp;i = 1, n ! the loop iteration/control variable of a parallel do is implicitly private&lt;BR /&gt;&amp;nbsp; do j = 1, m ! this interior loop iteration/control variable within a parallel region has no implicitness to it&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ! The private(j) clause dictates this variable is to remain private&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Note, while j &lt;EM&gt;&lt;STRONG&gt;may &lt;/STRONG&gt;&lt;/EM&gt;get registerized in one loop&amp;nbsp;and thus have no adverse interactions amongst threads, in other places j may have a context located in the scope outside the parallel region and thus may exhibit a conflict of use. Use of private clause eliminates the conflict usage.&lt;/P&gt;&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
      <pubDate>Thu, 08 Aug 2019 14:24:24 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141148#M137225</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2019-08-08T14:24:24Z</dc:date>
    </item>
    <item>
      <title>I solved my problem by add !</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141149#M137226</link>
      <description>&lt;P&gt;I solved my problem by add !$OMP CRITICAL statement in a subroutine that does not have any OMP statements. Actually, this subroutine is called by a module that does not have any OMP statements. And this module is called in a OMP parallel region. Although I think this module is not the cause, what I did worked.......&lt;/P&gt;</description>
      <pubDate>Thu, 08 Aug 2019 14:44:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/OPENMP-INTEL-FOTRAN-RUN-TIME-ERROR-forrtl-severe-40-recursive-I/m-p/1141149#M137226</guid>
      <dc:creator>Zhang__Xueyan</dc:creator>
      <dc:date>2019-08-08T14:44:14Z</dc:date>
    </item>
  </channel>
</rss>

