<?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 Quote:iliyapolak wrote: in Intel® ISA Extensions</title>
    <link>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996250#M4790</link>
    <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;iliyapolak wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&amp;gt;&amp;gt;&amp;gt;But what about end to begin, so reverse? Does the CPU realize this pattern?&amp;gt;&amp;gt;&amp;gt;&lt;/P&gt;

&lt;P&gt;It is already answered, but &amp;nbsp;I would like to add that probably in order to realize backward prefetching index pattern should be linear and decresing.&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;I am sure, this requirement is fullfilled: I have a loop starting from maxsize to zero and decrement is vector size, so 128bit for sse version and 256bit for avx version. So this is a fixed step linear decrement.&lt;/P&gt;</description>
    <pubDate>Wed, 13 May 2015 07:50:17 GMT</pubDate>
    <dc:creator>Christian_M_2</dc:creator>
    <dc:date>2015-05-13T07:50:17Z</dc:date>
    <item>
      <title>Cache and _mm_prefetch</title>
      <link>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996246#M4786</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;

&lt;P&gt;I have some code, where I iterate over an array in reverse order. I already use SSE,AVX (depending on what CPU supports). Normally prefetching of CPU should be finde, if I iterate over an arry from begin to end. But what about end to begin, so reverse? Does the CPU realize this pattern?&lt;/P&gt;

&lt;P&gt;Or should I give hints, with &lt;SPAN class="sig"&gt;&lt;SPAN class="name"&gt;_mm_prefetch? If so, how do I use this intrinsic. Should I always give L1 as cache level. And how many iterations before should I prefetch data?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 10 May 2015 11:10:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996246#M4786</guid>
      <dc:creator>Christian_M_2</dc:creator>
      <dc:date>2015-05-10T11:10:33Z</dc:date>
    </item>
    <item>
      <title>The last CPU I'm aware of</title>
      <link>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996247#M4787</link>
      <description>&lt;P&gt;The last CPU I'm aware of which didn't have backwards hardware prefetch was Athlon. Usually there is ability to capture a few backwards streams in addition to the larger number available for forward streams.&lt;/P&gt;

&lt;P&gt;as far as I know the situation for hints would be similar in either direction. Many cpu will ignore l1 hints, this may be covered in architecture doc.&lt;/P&gt;</description>
      <pubDate>Sun, 10 May 2015 12:24:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996247#M4787</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2015-05-10T12:24:33Z</dc:date>
    </item>
    <item>
      <title>Hello,</title>
      <link>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996248#M4788</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;

&lt;P&gt;ok if the CPU has at least on backward prefetcher thats fine for me. Profiling seems to confirm this. If I change indexing to forward, performance changes 1-2%, this might be normal uncertainty of tests.&lt;/P&gt;

&lt;P&gt;I did some research and you are right the prefetch instruction does not seem to be used anymore.&lt;/P&gt;</description>
      <pubDate>Tue, 12 May 2015 07:33:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996248#M4788</guid>
      <dc:creator>Christian_M_2</dc:creator>
      <dc:date>2015-05-12T07:33:30Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;&gt;But what about end to</title>
      <link>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996249#M4789</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 12px; line-height: 16.3636360168457px;"&gt;&amp;gt;&amp;gt;&amp;gt;But what about end to begin, so reverse? Does the CPU realize this pattern?&amp;gt;&amp;gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 12px; line-height: 16.3636360168457px;"&gt;It is already answered, but &amp;nbsp;I would like to add that probably in order to realize backward prefetching index pattern should be linear and decresing.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 12 May 2015 12:09:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996249#M4789</guid>
      <dc:creator>Bernard</dc:creator>
      <dc:date>2015-05-12T12:09:58Z</dc:date>
    </item>
    <item>
      <title>Quote:iliyapolak wrote:</title>
      <link>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996250#M4790</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;iliyapolak wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&amp;gt;&amp;gt;&amp;gt;But what about end to begin, so reverse? Does the CPU realize this pattern?&amp;gt;&amp;gt;&amp;gt;&lt;/P&gt;

&lt;P&gt;It is already answered, but &amp;nbsp;I would like to add that probably in order to realize backward prefetching index pattern should be linear and decresing.&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;I am sure, this requirement is fullfilled: I have a loop starting from maxsize to zero and decrement is vector size, so 128bit for sse version and 256bit for avx version. So this is a fixed step linear decrement.&lt;/P&gt;</description>
      <pubDate>Wed, 13 May 2015 07:50:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996250#M4790</guid>
      <dc:creator>Christian_M_2</dc:creator>
      <dc:date>2015-05-13T07:50:17Z</dc:date>
    </item>
    <item>
      <title>Christian,</title>
      <link>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996251#M4791</link>
      <description>&lt;P&gt;Christian,&lt;BR /&gt;
	&lt;BR /&gt;
	You can find the answer In "7.2 HARDWARE PREFETCHING OF DATA"&lt;BR /&gt;
	of Intel® 64 and IA-32 Architectures Optimization Reference Manual&amp;nbsp;(google "Order Number: 248966").&lt;BR /&gt;
	&lt;BR /&gt;
	I suspect you have at least 4 backward stream prefetchers.&lt;/P&gt;</description>
      <pubDate>Wed, 13 May 2015 09:45:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-ISA-Extensions/Cache-and-mm-prefetch/m-p/996251#M4791</guid>
      <dc:creator>Vladimir_Sedach</dc:creator>
      <dc:date>2015-05-13T09:45:59Z</dc:date>
    </item>
  </channel>
</rss>

