<?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 parallelizing array assignments in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/parallelizing-array-assignments/m-p/974145#M97880</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;If I have a DO loop where the values of array B are assigned to array A in the form:&lt;/P&gt;
&lt;P&gt;DO N=N1,N2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; A(:,N)=B(:,N)&lt;/P&gt;
&lt;P&gt;ENDDO&lt;/P&gt;
&lt;P&gt;Will parallelizing it in OpenMP like below work, or do i need to explicitly loop through the first index:&lt;/P&gt;
&lt;P&gt;!$OMP PARALLEL DO&lt;/P&gt;
&lt;P&gt;!$OMP&amp;amp; PRIVATE(N)&lt;/P&gt;
&lt;P&gt;DO N=N1,N2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; A(:,N)=B(:,N)&lt;/P&gt;
&lt;P&gt;ENDDO&lt;/P&gt;
&lt;P&gt;What if, instead of an array B on the right-hand side, it is a scalar?&lt;/P&gt;</description>
    <pubDate>Tue, 28 May 2013 20:40:21 GMT</pubDate>
    <dc:creator>john-l-ditter</dc:creator>
    <dc:date>2013-05-28T20:40:21Z</dc:date>
    <item>
      <title>parallelizing array assignments</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/parallelizing-array-assignments/m-p/974145#M97880</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;If I have a DO loop where the values of array B are assigned to array A in the form:&lt;/P&gt;
&lt;P&gt;DO N=N1,N2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; A(:,N)=B(:,N)&lt;/P&gt;
&lt;P&gt;ENDDO&lt;/P&gt;
&lt;P&gt;Will parallelizing it in OpenMP like below work, or do i need to explicitly loop through the first index:&lt;/P&gt;
&lt;P&gt;!$OMP PARALLEL DO&lt;/P&gt;
&lt;P&gt;!$OMP&amp;amp; PRIVATE(N)&lt;/P&gt;
&lt;P&gt;DO N=N1,N2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; A(:,N)=B(:,N)&lt;/P&gt;
&lt;P&gt;ENDDO&lt;/P&gt;
&lt;P&gt;What if, instead of an array B on the right-hand side, it is a scalar?&lt;/P&gt;</description>
      <pubDate>Tue, 28 May 2013 20:40:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/parallelizing-array-assignments/m-p/974145#M97880</guid>
      <dc:creator>john-l-ditter</dc:creator>
      <dc:date>2013-05-28T20:40:21Z</dc:date>
    </item>
    <item>
      <title>Your code will work in</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/parallelizing-array-assignments/m-p/974146#M97881</link>
      <description>&lt;P&gt;Your code will work in parallel, even with scalar.&lt;/P&gt;
&lt;P&gt;For small arrays you might want to avoid the parallel code. For large arrays, you might want to limit the number of threads to 2-4 as you will soon hit a memory bandwidth situation.&lt;/P&gt;
&lt;P&gt;Jim Dempsey&lt;/P&gt;
&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
      <pubDate>Tue, 28 May 2013 21:27:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/parallelizing-array-assignments/m-p/974146#M97881</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2013-05-28T21:27:42Z</dc:date>
    </item>
    <item>
      <title>Thank you, Jim.</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/parallelizing-array-assignments/m-p/974147#M97882</link>
      <description>&lt;P&gt;Thank you, Jim.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Jun 2013 15:38:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/parallelizing-array-assignments/m-p/974147#M97882</guid>
      <dc:creator>john-l-ditter</dc:creator>
      <dc:date>2013-06-07T15:38:17Z</dc:date>
    </item>
  </channel>
</rss>

