<?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 Re: I/O operation conflicts with a prior I/O operation in Intel® Moderncode for Parallel Architectures</title>
    <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/I-O-operation-conflicts-with-a-prior-I-O-operation/m-p/906718#M4457</link>
    <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
If you have writes by multiple threads using the same unit, you must make it a critical region. If you do that, which order the threads put data is indeterminate, but at least all threads should succeed, without depending on the run time library implementing its own critical. $OMP END DO is redundant (the standard Fortran end do takes care of it), so there is little reason for thread checker to attempt prettiness when it appears to be closely associated with a flagged problem.&lt;BR /&gt;-tcheck over-rules several, maybe all, of the options you have specified.&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Wed, 29 Jul 2009 22:07:09 GMT</pubDate>
    <dc:creator>TimP</dc:creator>
    <dc:date>2009-07-29T22:07:09Z</dc:date>
    <item>
      <title>I/O operation conflicts with a prior I/O operation</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/I-O-operation-conflicts-with-a-prior-I-O-operation/m-p/906717#M4456</link>
      <description>Hi all,&lt;BR /&gt;&lt;BR /&gt;I am checking a Fortran90 parallel code with the Intel Thread Checker, and I get these two similar error statements:&lt;BR /&gt;6 | I/O data-race | Error | 3 | omp parallel region |I/O operation at "deriv_mb_redimen.f90":1210 conflicts with a prior I/O operation at region "deriv_mb_redimen.f90":1210 | "deriv_mb_redimen.f90":1210 | "deriv_mb_redimen.f90":1210&lt;BR /&gt;7 | I/O data-race  |  Error  |  3  | omp  parallel region |I/O operation at "deriv_mb_redimen.f90":1242 conflicts with a prior I/O operation at region "deriv_mb_redimen.f90":1210   |    "deriv_mb_redimen.f90":1210 | "deriv_mb_redimen.f90":1242&lt;BR /&gt;&lt;BR /&gt;Both offending lines (1210 and 1242) are inside an !$OMP PARALLEL/!$OMP END PARALLEL region and they are&lt;BR /&gt;** code: **&lt;BR /&gt; !$OMP END DO ! this is line 1210&lt;BR /&gt; write(*,*) ' enddo' ! this I have to check where I am during debugging&lt;BR /&gt;&lt;BR /&gt; .... ! a few deallocate(...) here&lt;BR /&gt;&lt;BR /&gt; write(*,*) ' all deallocated' !this is line 1242&lt;BR /&gt;&lt;BR /&gt; !$OMP END PARALLEL&lt;BR /&gt;** end code **&lt;BR /&gt;&lt;BR /&gt;I am a bit confused, especially in relation to line 1210, which contains a simple (?) !$OMP END DO.&lt;BR /&gt;As they are qualified as Error by Thread Checker I thought I should better find out what is happening, so any help will be appreciated.&lt;BR /&gt;&lt;BR /&gt;This code is part of a subroutine that is called several times by the main code. Only the subroutine has OpenMP features, but I compiled everything with the same flags:&lt;BR /&gt;ifort -check all,noarg_temp_created -axT -ipo -traceback -i-static -fpstkchk -g -tcheck -openmp&lt;BR /&gt;&lt;BR /&gt;Please, note that I am quite a newbie in parallel programming, so excuse me if this is a silly question, but I could not find information on the forums (or elsewhere) about this particular error message.&lt;BR /&gt;</description>
      <pubDate>Wed, 29 Jul 2009 18:04:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/I-O-operation-conflicts-with-a-prior-I-O-operation/m-p/906717#M4456</guid>
      <dc:creator>jordimp</dc:creator>
      <dc:date>2009-07-29T18:04:35Z</dc:date>
    </item>
    <item>
      <title>Re: I/O operation conflicts with a prior I/O operation</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/I-O-operation-conflicts-with-a-prior-I-O-operation/m-p/906718#M4457</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
If you have writes by multiple threads using the same unit, you must make it a critical region. If you do that, which order the threads put data is indeterminate, but at least all threads should succeed, without depending on the run time library implementing its own critical. $OMP END DO is redundant (the standard Fortran end do takes care of it), so there is little reason for thread checker to attempt prettiness when it appears to be closely associated with a flagged problem.&lt;BR /&gt;-tcheck over-rules several, maybe all, of the options you have specified.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 29 Jul 2009 22:07:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/I-O-operation-conflicts-with-a-prior-I-O-operation/m-p/906718#M4457</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2009-07-29T22:07:09Z</dc:date>
    </item>
  </channel>
</rss>

