<?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: Accelerating random access to memory in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Accelerating-random-access-to-memory/m-p/996001#M22933</link>
    <description>&lt;DIV&gt;thanks for the response.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I do access the memory with &lt;/DIV&gt;
&lt;DIV&gt;pSrc[y*srcStep) + x].&lt;/DIV&gt;
&lt;DIV&gt;but suppose that y &amp;amp; x are vectors. Access the memory through loop&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;for (i=1;i&lt;N&gt;= pSrc[y&lt;I&gt;*srcStep + x&lt;I&gt; ];}&lt;/I&gt;&lt;/I&gt;&lt;/N&gt;&lt;/DIV&gt;
&lt;DIV&gt;is quite slow. I can speed it up if I calculate &lt;/DIV&gt;
&lt;DIV&gt;offset&lt;I&gt; = y&lt;I&gt;*srcStep + x&lt;I&gt; &lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/DIV&gt;
&lt;DIV&gt;as vectors, using ipps functions, but I still need a loop &lt;/DIV&gt;
&lt;DIV&gt;for (i=1;i&lt;N&gt;= pSrc[offset&lt;I&gt;];}&lt;/I&gt;&lt;/N&gt;&lt;/DIV&gt;
&lt;DIV&gt;I want to speed it up further. If mmx/sse (and better, IPP) supportsome memory access for multiple address it would probablyboost the speed further.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;thanks,&lt;/DIV&gt;
&lt;DIV&gt;Nizan.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
    <pubDate>Mon, 14 Feb 2005 17:13:46 GMT</pubDate>
    <dc:creator>nizanh</dc:creator>
    <dc:date>2005-02-14T17:13:46Z</dc:date>
    <item>
      <title>Accelerating random access to memory</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Accelerating-random-access-to-memory/m-p/995999#M22931</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;hi,&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I am looking for a way to get faster memory access to, say, some random pixels in an image. I couldn't find any IPP function that dose so (or close to). Presently I am using IPPS function to compute the offset of the memory address, but IPPS doesn't support pointer arithmatic, so I still have to do the last step in a loop.&lt;/DIV&gt;
&lt;DIV&gt;Any suggestion?&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;thanks,&lt;/DIV&gt;
&lt;DIV&gt;Nizan.&lt;/DIV&gt;&lt;P&gt;Message Edited by nizanh on &lt;SPAN class="date_text"&gt;02-02-2005&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;04:14 AM&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Feb 2005 20:01:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Accelerating-random-access-to-memory/m-p/995999#M22931</guid>
      <dc:creator>nizanh</dc:creator>
      <dc:date>2005-02-02T20:01:56Z</dc:date>
    </item>
    <item>
      <title>Re: Accelerating random access to memory</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Accelerating-random-access-to-memory/m-p/996000#M22932</link>
      <description>&lt;DIV&gt;Hi Nizan&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;It is a bit unclear what you are trying to do. To get access to arbitrary pixel in image you can use&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;val = pSrc[y*srcStep) + x]&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;where x and y is pixel coordinates&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Is it what you are asking about?&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Regards,&lt;/DIV&gt;
&lt;DIV&gt; Vladimir&lt;/DIV&gt;</description>
      <pubDate>Wed, 09 Feb 2005 19:57:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Accelerating-random-access-to-memory/m-p/996000#M22932</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2005-02-09T19:57:48Z</dc:date>
    </item>
    <item>
      <title>Re: Accelerating random access to memory</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Accelerating-random-access-to-memory/m-p/996001#M22933</link>
      <description>&lt;DIV&gt;thanks for the response.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I do access the memory with &lt;/DIV&gt;
&lt;DIV&gt;pSrc[y*srcStep) + x].&lt;/DIV&gt;
&lt;DIV&gt;but suppose that y &amp;amp; x are vectors. Access the memory through loop&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;for (i=1;i&lt;N&gt;= pSrc[y&lt;I&gt;*srcStep + x&lt;I&gt; ];}&lt;/I&gt;&lt;/I&gt;&lt;/N&gt;&lt;/DIV&gt;
&lt;DIV&gt;is quite slow. I can speed it up if I calculate &lt;/DIV&gt;
&lt;DIV&gt;offset&lt;I&gt; = y&lt;I&gt;*srcStep + x&lt;I&gt; &lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/DIV&gt;
&lt;DIV&gt;as vectors, using ipps functions, but I still need a loop &lt;/DIV&gt;
&lt;DIV&gt;for (i=1;i&lt;N&gt;= pSrc[offset&lt;I&gt;];}&lt;/I&gt;&lt;/N&gt;&lt;/DIV&gt;
&lt;DIV&gt;I want to speed it up further. If mmx/sse (and better, IPP) supportsome memory access for multiple address it would probablyboost the speed further.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;thanks,&lt;/DIV&gt;
&lt;DIV&gt;Nizan.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 14 Feb 2005 17:13:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Accelerating-random-access-to-memory/m-p/996001#M22933</guid>
      <dc:creator>nizanh</dc:creator>
      <dc:date>2005-02-14T17:13:46Z</dc:date>
    </item>
  </channel>
</rss>

