<?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 Request for feedback on VP2INTERSECT emulation in Software Tuning, Performance Optimization &amp; Platform Monitoring</title>
    <link>https://community.intel.com/t5/Software-Tuning-Performance/Request-for-feedback-on-VP2INTERSECT-emulation/m-p/1350054#M7999</link>
    <description>&lt;P&gt;I wanted to ask for feedback on an emulation of the VP2INTERSECT instructions:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://arxiv.org/abs/2112.06342" target="_blank"&gt;https://arxiv.org/abs/2112.06342&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The emulation is faster than the native instructions when only one of the output masks is returned. I consider the following three applications of VP2INTERSECT instructions:&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;SPAN style="font-family: inherit;"&gt;computing the intersection (common elements) of two arrays of integers (whether sorted or unsorted),&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="font-family: inherit;"&gt;computing the &lt;/SPAN&gt;&lt;STRONG style="font-family: inherit;"&gt;size&lt;/STRONG&gt;&lt;SPAN style="font-family: inherit;"&gt; of the intersection of two arrays of integers,&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="font-family: inherit;"&gt;removing common elements from two arrays of integers.&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Only 3. requires both output masks, while 1. and 2. only need one. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Since the name of the instructions is VP2INTERSECT, I presume that the main application is 1. (possibly 2.), in which case a fast emulation could be useful.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But I may be wrong, so would like to ask if the two cases above (computing the intersection, or the size of the intersection of two arrays of integers) are the intended (or expected most frequent) use cases for these instructions?.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 10 Jan 2022 14:09:02 GMT</pubDate>
    <dc:creator>guillermozo</dc:creator>
    <dc:date>2022-01-10T14:09:02Z</dc:date>
    <item>
      <title>Request for feedback on VP2INTERSECT emulation</title>
      <link>https://community.intel.com/t5/Software-Tuning-Performance/Request-for-feedback-on-VP2INTERSECT-emulation/m-p/1350054#M7999</link>
      <description>&lt;P&gt;I wanted to ask for feedback on an emulation of the VP2INTERSECT instructions:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://arxiv.org/abs/2112.06342" target="_blank"&gt;https://arxiv.org/abs/2112.06342&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The emulation is faster than the native instructions when only one of the output masks is returned. I consider the following three applications of VP2INTERSECT instructions:&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;SPAN style="font-family: inherit;"&gt;computing the intersection (common elements) of two arrays of integers (whether sorted or unsorted),&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="font-family: inherit;"&gt;computing the &lt;/SPAN&gt;&lt;STRONG style="font-family: inherit;"&gt;size&lt;/STRONG&gt;&lt;SPAN style="font-family: inherit;"&gt; of the intersection of two arrays of integers,&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="font-family: inherit;"&gt;removing common elements from two arrays of integers.&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Only 3. requires both output masks, while 1. and 2. only need one. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Since the name of the instructions is VP2INTERSECT, I presume that the main application is 1. (possibly 2.), in which case a fast emulation could be useful.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But I may be wrong, so would like to ask if the two cases above (computing the intersection, or the size of the intersection of two arrays of integers) are the intended (or expected most frequent) use cases for these instructions?.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 10 Jan 2022 14:09:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Tuning-Performance/Request-for-feedback-on-VP2INTERSECT-emulation/m-p/1350054#M7999</guid>
      <dc:creator>guillermozo</dc:creator>
      <dc:date>2022-01-10T14:09:02Z</dc:date>
    </item>
  </channel>
</rss>

