<?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 thanks Zygfryd.  We will in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147805#M26262</link>
    <description>&lt;P&gt;thanks Zygfryd.&amp;nbsp; We will check this.&lt;BR /&gt;
	&lt;BR /&gt;
	regards,&lt;BR /&gt;
	Chao&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 14 Dec 2017 03:54:05 GMT</pubDate>
    <dc:creator>Chao_Y_Intel</dc:creator>
    <dc:date>2017-12-14T03:54:05Z</dc:date>
    <item>
      <title>Division by infinity problem</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147801#M26258</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;

&lt;P&gt;I am using IPP 2017 update 3 as single-threaded static library on Visual Studio 2015. My runtime environments are:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;Intel® Core™ i7-3770 CPU @ 3.40GHz on Windows 7,&lt;/LI&gt;
	&lt;LI&gt;Intel® Xeon® CPU E5-1650 v4 @ 3.60GHz on Windows 10.&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;I found a problem with division of finite number by infinity (like 1/inf) with the following functions:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;ippsDiv_32f,&lt;/LI&gt;
	&lt;LI&gt;ippsDiv_32f_I,&lt;/LI&gt;
	&lt;LI&gt;ippiDiv_32f_C1R,&lt;/LI&gt;
	&lt;LI&gt;ippiDiv_32f_C1IR&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;As the result of operation I receive NaN instead of 0.&lt;/P&gt;

&lt;P&gt;I checked that the problem does not exist on Intel® Core™2 Quad Processor Q8400 CPU.&lt;/P&gt;

&lt;P&gt;I also confirmed that the problem does not exist on i7 and Xeon CPUs when I enable only these features which are supported by Core 2 Quad:&lt;/P&gt;

&lt;UL&gt;
	&lt;LI&gt;ippCPUID_MMX,&lt;/LI&gt;
	&lt;LI&gt;ippCPUID_SSE,&lt;/LI&gt;
	&lt;LI&gt;ippCPUID_SSE2,&lt;/LI&gt;
	&lt;LI&gt;ippCPUID_SSE3,&lt;/LI&gt;
	&lt;LI&gt;ippCPUID_SSSE3,&lt;/LI&gt;
	&lt;LI&gt;ippCPUID_SSE41.&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;When I enable ippCPUID_SSE42 feature, the problem can be spot again.&lt;/P&gt;

&lt;P&gt;I checked also ippsDiv_64f and it seems the it works properly.&lt;/P&gt;

&lt;P&gt;Please also find the attached full table of results for different set of cpuFeatures and particular division arguments.&lt;span class="lia-inline-image-display-wrapper" image-alt="results.png"&gt;&lt;img src="https://community.intel.com/t5/image/serverpage/image-id/9606iC28ABE9018DE3EB2/image-size/large?v=v2&amp;amp;px=999&amp;amp;whitelist-exif-data=Orientation%2CResolution%2COriginalDefaultFinalSize%2CCopyright" role="button" title="results.png" alt="results.png" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Jul 2017 11:59:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147801#M26258</guid>
      <dc:creator>krzysztofpiotrowski</dc:creator>
      <dc:date>2017-07-14T11:59:04Z</dc:date>
    </item>
    <item>
      <title>HI,  thanks for your report. </title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147802#M26259</link>
      <description>&lt;P&gt;HI,&amp;nbsp; thanks for your report.&amp;nbsp; We rooted the problem, and will fix it in our future product release ( likely it will in IPP 2018 update 1 release).&lt;BR /&gt;
	&lt;BR /&gt;
	Regards,&lt;BR /&gt;
	Chao&lt;/P&gt;</description>
      <pubDate>Fri, 04 Aug 2017 15:52:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147802#M26259</guid>
      <dc:creator>Chao_Y_Intel</dc:creator>
      <dc:date>2017-08-04T15:52:43Z</dc:date>
    </item>
    <item>
      <title>I'd like to confirm that the</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147803#M26260</link>
      <description>&lt;P&gt;I'd like to confirm that the problem has been fixed in IPP 2018 Update 1. Thank you very much for your support.&lt;/P&gt;</description>
      <pubDate>Wed, 22 Nov 2017 06:15:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147803#M26260</guid>
      <dc:creator>krzysztofpiotrowski</dc:creator>
      <dc:date>2017-11-22T06:15:14Z</dc:date>
    </item>
    <item>
      <title>Dear Chao</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147804#M26261</link>
      <description>&lt;P&gt;Dear Chao&lt;/P&gt;

&lt;P&gt;I have verified the results of division operation in Ipp 2018 Update 1 and there are still some issues with infinity arithmetics. The division operation for &lt;STRONG&gt;1 / inf&lt;/STRONG&gt; and &lt;STRONG&gt;0 / inf &lt;/STRONG&gt;works correctly but there are still some issues for &lt;STRONG&gt;inf / constant. &lt;/STRONG&gt;&lt;/P&gt;

&lt;P&gt;For example for the given code:&lt;/P&gt;

&lt;PRE class="brush:cpp;"&gt;#include &amp;lt;ipp.h&amp;gt;
#include &amp;lt;limits&amp;gt;
#include &amp;lt;iostream&amp;gt;

int main()
{
	ippInit();

	const IppLibraryVersion *lib;
	lib = ippsGetLibVersion();
	printf("CPU       : %s\n", lib-&amp;gt;targetCpu);
	printf("Name      : %s\n", lib-&amp;gt;Name);
	printf("Version   : %s\n", lib-&amp;gt;Version);
	printf("Build date: %s\n", lib-&amp;gt;BuildDate);


	auto inf = std::numeric_limits&amp;lt;float&amp;gt;::infinity();

	int step1, step2, step3;
	
	float* a = ippiMalloc_32f_C1(1, 1, &amp;amp;step1);
	float* b = ippiMalloc_32f_C1(1, 1, &amp;amp;step2);
	float* c = ippiMalloc_32f_C1(1, 1, &amp;amp;step3);

	a[0] = inf;
	b[0] = 10;
	for (size_t i = 0; i &amp;lt; 9; i++)
	{
		b[0] += 0.1;
		ippiDiv_32f_C1R(b, step1, a, step2, c, step2, { 1,1 });
		std::cout &amp;lt;&amp;lt;  a[0] &amp;lt;&amp;lt; " / " &amp;lt;&amp;lt; b[0] &amp;lt;&amp;lt;" =  Without IPP: " &amp;lt;&amp;lt; a[0] / b[0] &amp;lt;&amp;lt; " Ipp: " &amp;lt;&amp;lt; c[0] &amp;lt;&amp;lt; std::endl;
	}
}
&lt;/PRE&gt;

&lt;P&gt;the results are as follow:&lt;/P&gt;

&lt;P&gt;&lt;A href="https://community.intel.com/file/611146/download"&gt;&lt;IMG alt="" src="https://community.intel.com/file/611146" /&gt;&lt;IMG alt="" src="https://community.intel.com/file/611146/download" /&gt;&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;as you can see the results are not stable.&lt;/P&gt;

&lt;P&gt;Regards&lt;BR /&gt;
	Zygfryd&lt;/P&gt;</description>
      <pubDate>Wed, 13 Dec 2017 10:50:57 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147804#M26261</guid>
      <dc:creator>Wieszok__Zygfryd</dc:creator>
      <dc:date>2017-12-13T10:50:57Z</dc:date>
    </item>
    <item>
      <title>thanks Zygfryd.  We will</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147805#M26262</link>
      <description>&lt;P&gt;thanks Zygfryd.&amp;nbsp; We will check this.&lt;BR /&gt;
	&lt;BR /&gt;
	regards,&lt;BR /&gt;
	Chao&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 03:54:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Division-by-infinity-problem/m-p/1147805#M26262</guid>
      <dc:creator>Chao_Y_Intel</dc:creator>
      <dc:date>2017-12-14T03:54:05Z</dc:date>
    </item>
  </channel>
</rss>

