<?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: optimization with xW vectorization in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759452#M14939</link>
    <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;No, I really meant vec-report2. Folks, please get your facts straight before advising our customers!&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;The setting vec-report1 is on by default and reports successful vectorization. The setting vec-report2, in addition, reports reasons of failure. The switch vec-report3 is only useful in you want more information on prohibiting data dependences.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;So:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;do ii= 1, 1000&lt;BR /&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;SPAN&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;t(ii) = t(ii-1) * 2&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;enddo&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;=&amp;gt; ifort -xP vec-report2 joho.f&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="3"&gt;joho.f(5) : (col. 7) remark: loop was not vectorized: existence of vector dependence.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;=&amp;gt; ifort -xP vec-report3 joho.f&lt;BR /&gt;&lt;/FONT&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;joho.f(5) : (col. 7) remark: vector dependence: proven FLOW dependence between T line 6, and T line 6.&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="3"&gt;joho.f(5) : (col. 7) remark: loop was not vectorized: existence of vector dependence.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;If you are interested in a silent compilation, please use vec-report0. &lt;/FONT&gt;&lt;FONT face="Times New Roman" size="3"&gt;All this, and more, can be found in:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.intel.com/cd/ids/developer/asmo-na/eng/65774.htm" target="_blank"&gt;&lt;FONT face="Times New Roman" size="3"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;A href="http://www.intel.com/cd/ids/developer/asmo-na/eng/65774.htm" target="_blank"&gt;http://www.intel.com/cd/ids/developer/asmo-na/eng/65774.htm&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/DIV&gt;</description>
    <pubDate>Sat, 06 Aug 2005 01:18:19 GMT</pubDate>
    <dc:creator>Intel_C_Intel</dc:creator>
    <dc:date>2005-08-06T01:18:19Z</dc:date>
    <item>
      <title>optimization with xW vectorization</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759445#M14932</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Having problems using the vectorization switch with ifc 7.1 on a server with P4 Xeon processors running MPI. The following section of code is the problem:&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;1 do j=1,totpln&lt;BR /&gt;2 write (istt,13) j,plnlabel(j),notests(j),bmave&lt;BR /&gt;3 write (istt,41) (siave(i,j),i=1,notd)&lt;BR /&gt;4 write (istt,42) (ckave(i),i=1,notd)&lt;BR /&gt;5 write (istt,15) bmasd&lt;BR /&gt;6 write (istt,41) (siasd(i,j),i=1,notd)&lt;BR /&gt;7 write (istt,42) (ckasd(i),i=1,notd)&lt;BR /&gt;8 enddo&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;when compiled without the vectorization switch (-xW) the code runs perfect, however when compiled with the -xW switch an "Address Error" occurs. Also when lines 4 &amp;amp; 7 or 3 &amp;amp; 6 are removed the program runs perfect with the xW switch. Does ifc have any problems vectorizing this loop (if it does at all) and what could be the possible cause of the runtime error. Any help would be fantastic.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Cheers, Jason&lt;/DIV&gt;&lt;P&gt;Message Edited by jgoldswo on &lt;SPAN class="date_text"&gt;04-06-2004&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;05:25 AM&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 06 Apr 2004 19:20:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759445#M14932</guid>
      <dc:creator>jgoldswo</dc:creator>
      <dc:date>2004-04-06T19:20:35Z</dc:date>
    </item>
    <item>
      <title>Vectorization problem ifort</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759446#M14933</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;I am trying a simple code like this in fortran&lt;BR /&gt;&lt;BR /&gt;do ii= 1, 1000&lt;BR /&gt;  temp = t(ii)&lt;BR /&gt;enddo&lt;BR /&gt;&lt;BR /&gt;This loop cannot be vectorized. I am using Intel fortran compiler version 8.1, on Intel Xeon CPU 2.66GHz with HT.&lt;BR /&gt;&lt;BR /&gt;Actually I was even stuck in something like the following not vectorizable&lt;BR /&gt;&lt;BR /&gt;do ii= 1, 1000&lt;BR /&gt; t(ii)=temp&lt;BR /&gt;enddo&lt;BR /&gt;in th emiddle of my code, where t can be a big array of real.</description>
      <pubDate>Fri, 05 Aug 2005 19:52:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759446#M14933</guid>
      <dc:creator>gagan_saket</dc:creator>
      <dc:date>2005-08-05T19:52:32Z</dc:date>
    </item>
    <item>
      <title>Re: Vectorization problem ifort</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759447#M14934</link>
      <description>How would you expect to vectorize the first loop?  It could be replaced simply by:&lt;BR /&gt;&lt;BR /&gt;temp = t(1000)&lt;BR /&gt;&lt;BR /&gt;The second loop is not vectorizeable either.  It's just a lot of memory loads.  Vectorization comes into play when there's computation being done on array elements, not just moving data around.</description>
      <pubDate>Fri, 05 Aug 2005 20:33:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759447#M14934</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2005-08-05T20:33:04Z</dc:date>
    </item>
    <item>
      <title>Re: optimization with xW vectorization</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759448#M14935</link>
      <description>Well I think It was my fault that i put the qustion incorreclty,&lt;BR /&gt;&lt;BR /&gt;actually the proper loop is &lt;BR /&gt;&lt;BR /&gt;do ii=1,1000&lt;BR /&gt;  temp=t(ii)&lt;BR /&gt;  temp=temp+some calcuations&lt;BR /&gt;  cp(ii)=temp&lt;BR /&gt;enddo</description>
      <pubDate>Fri, 05 Aug 2005 21:00:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759448#M14935</guid>
      <dc:creator>gagan_saket</dc:creator>
      <dc:date>2005-08-05T21:00:02Z</dc:date>
    </item>
    <item>
      <title>Re: optimization with xW vectorization</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759449#M14936</link>
      <description>Context is everything.  A lot depends on what the "some calculations" were.  If you ask for a vectorization report, the compiler will give you more information, perhaps, as to why it did not vectorize. Also, on IA-32, I think you also have to use -O3 to vectorize.</description>
      <pubDate>Fri, 05 Aug 2005 21:17:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759449#M14936</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2005-08-05T21:17:46Z</dc:date>
    </item>
    <item>
      <title>Re: optimization with xW vectorization</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759450#M14937</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;Dear Gagan,&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;I have to correct Steve here. First, vectorization is enabled with any of the xKNWBP switches, -O3 is optional for higher performance, but not required. Second, the fill loop simply vectorizes:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;do ii= 1, 1000&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;t(ii) = temp&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;enddo&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;&amp;gt;&lt;SPAN&gt;&lt;/SPAN&gt;ifort -xP&lt;SPAN&gt; &lt;/SPAN&gt;joho.f&lt;BR /&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="3"&gt;joho.f(6) : (col. 7) remark: LOOP WAS VECTORIZED.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;The generated assembly uses 128-bit wide stores to fill the array. Finally, your example &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;do ii=1,1000&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;temp=t(ii)&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;temp=temp+some calculations&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;cp(ii)=temp&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;enddo&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;may are may not vectorize, depending on what some calculations are. Here the switch vec-report2may give you more insights in potential complications. Let me know.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;As for Jasons posting, I only just noticed this now. A loop with write statements cannot be vectorized, so any bug you encounter must be elsewhere (the xW switch enables a lot more than just vectorization). If you still have the problem, please give some more context, or file the bug to Premier Support.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;Aart Bik&lt;BR /&gt;&lt;/FONT&gt;&lt;A href="http://www.aartbik.com/" target="_blank"&gt;&lt;FONT face="Times New Roman" size="3"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;A href="http://www.aartbik.com/" target="_blank"&gt;http://www.aartbik.com/&lt;/A&gt;&lt;/P&gt;&lt;/DIV&gt;</description>
      <pubDate>Fri, 05 Aug 2005 23:48:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759450#M14937</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2005-08-05T23:48:48Z</dc:date>
    </item>
    <item>
      <title>Re: optimization with xW vectorization</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759451#M14938</link>
      <description>I think Aart meant -vec_report3 to get the diagnostics about why loops don't vectorize.  -vec_report2 is on by default, and reports only those which do vectorize.&lt;BR /&gt;&lt;BR /&gt;If you see bugs with -xW in an old compiler, it would be well worth while to try a compiler update posted within the last month.</description>
      <pubDate>Sat, 06 Aug 2005 01:07:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759451#M14938</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2005-08-06T01:07:12Z</dc:date>
    </item>
    <item>
      <title>Re: optimization with xW vectorization</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759452#M14939</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;No, I really meant vec-report2. Folks, please get your facts straight before advising our customers!&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;The setting vec-report1 is on by default and reports successful vectorization. The setting vec-report2, in addition, reports reasons of failure. The switch vec-report3 is only useful in you want more information on prohibiting data dependences.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;So:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;do ii= 1, 1000&lt;BR /&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;SPAN&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;t(ii) = t(ii-1) * 2&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;enddo&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;=&amp;gt; ifort -xP vec-report2 joho.f&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="3"&gt;joho.f(5) : (col. 7) remark: loop was not vectorized: existence of vector dependence.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;=&amp;gt; ifort -xP vec-report3 joho.f&lt;BR /&gt;&lt;/FONT&gt;&lt;FONT size="3"&gt;&lt;FONT face="Times New Roman"&gt;joho.f(5) : (col. 7) remark: vector dependence: proven FLOW dependence between T line 6, and T line 6.&lt;BR /&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size="3"&gt;joho.f(5) : (col. 7) remark: loop was not vectorized: existence of vector dependence.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman" size="3"&gt;If you are interested in a silent compilation, please use vec-report0. &lt;/FONT&gt;&lt;FONT face="Times New Roman" size="3"&gt;All this, and more, can be found in:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.intel.com/cd/ids/developer/asmo-na/eng/65774.htm" target="_blank"&gt;&lt;FONT face="Times New Roman" size="3"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;A href="http://www.intel.com/cd/ids/developer/asmo-na/eng/65774.htm" target="_blank"&gt;http://www.intel.com/cd/ids/developer/asmo-na/eng/65774.htm&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/DIV&gt;</description>
      <pubDate>Sat, 06 Aug 2005 01:18:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/optimization-with-xW-vectorization/m-p/759452#M14939</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2005-08-06T01:18:19Z</dc:date>
    </item>
  </channel>
</rss>

