<?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 Sergey, in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931680#M16726</link>
    <description>&lt;P&gt;Sergey,&lt;/P&gt;
&lt;P&gt;this list is not fully precise - this list contains only functions that have got hand-developed optimization. It doesn't take into account functions that have nested calls to hand-optimized functions (for example convolution uses ippzero, etc.) and + 1 more thing - the whole library is built with icc/icl with the corresponding optimization switch - so new instructions can be inserted by compiler in ANY function.&lt;/P&gt;
&lt;P&gt;regards, Igor&lt;/P&gt;</description>
    <pubDate>Wed, 10 Jul 2013 15:00:36 GMT</pubDate>
    <dc:creator>Igor_A_Intel</dc:creator>
    <dc:date>2013-07-10T15:00:36Z</dc:date>
    <item>
      <title>Illegal instruction from custom 64 bit DLL</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931663#M16709</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I built a custom 64 bit dll with an export.def for the function exports.&lt;/P&gt;
&lt;P&gt;The dll code is directly from Intel code samples for building custom IPP dlls. I use&amp;nbsp;&lt;EM&gt;ippStaticInit()&lt;/EM&gt;, not&amp;nbsp;&lt;EM&gt;ippStaticInitCPU(id)&lt;/EM&gt; .. so there should not be a problem there.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My system is i5 2500k, Windows 7, "x64 based PC"&lt;/P&gt;
&lt;P&gt;The crash is on the&amp;nbsp;vxorps instruction on the first call to ippsZero_32f&lt;/P&gt;
&lt;P&gt;e9_ippsZero_32f:&lt;BR /&gt;[...]&lt;BR /&gt;000007FEE52284F6 &amp;nbsp;jg &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;e9_ippsZero_32f+1Fh (7FEE52284FFh)&amp;nbsp;&lt;BR /&gt;000007FEE52284F8 &amp;nbsp;call &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;e9_ownsZero_8u_E9 (7FEE52565C0h)&lt;/P&gt;
&lt;P&gt;e9_ownsZero_8u_E9:&lt;BR /&gt;000007FEE52565C0 push rsi &lt;BR /&gt;000007FEE52565C1 push rdi &lt;BR /&gt;000007FEE52565C2 mov rdi,rcx &lt;BR /&gt;000007FEE52565C5 mov rsi,rdx &lt;BR /&gt;000007FEE52565C8 mov rax,rdi &lt;BR /&gt;000007FEE52565CB movsxd rsi,esi &lt;BR /&gt;&lt;STRONG&gt;000007FEE52565CE vxorps ymm0,ymm0,ymm0&lt;/STRONG&gt;&amp;nbsp;; illegal instruction&amp;nbsp;&lt;BR /&gt;000007FEE52565D2 xor rdx,rdx &lt;BR /&gt;000007FEE52565D5 cmp rsi,100h&lt;/P&gt;
&lt;P&gt;Seems like this is something to do with AVX, but why would that be illegal and what should I do?&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 02:39:57 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931663#M16709</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-06-25T02:39:57Z</dc:date>
    </item>
    <item>
      <title>Hi,</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931664#M16710</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;could you run ippCpuInfo (available in ipp samples - it has pre-built executables) and publish here its output? 2nd generation Core supports AVX - so may be something is wrong with OS support.&lt;/P&gt;
&lt;P&gt;regards, Igor&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 05:31:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931664#M16710</guid>
      <dc:creator>Igor_A_Intel</dc:creator>
      <dc:date>2013-06-25T05:31:39Z</dc:date>
    </item>
    <item>
      <title>****************The decoded</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931665#M16711</link>
      <description>&lt;P&gt;****************&lt;BR /&gt;The decoded data&lt;BR /&gt;****************&lt;/P&gt;
&lt;P&gt;==================&lt;BR /&gt; Signature&lt;BR /&gt;Stepping ID 7&lt;BR /&gt;Model 10&lt;BR /&gt;Model + Ext. 42&lt;BR /&gt;Family 6&lt;BR /&gt;Family + Ext. 6&lt;BR /&gt;Type 0&lt;/P&gt;
&lt;P&gt;BrandName&lt;BR /&gt;=================================================&lt;BR /&gt; Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz&lt;BR /&gt;=================================================&lt;/P&gt;
&lt;P&gt;==============================================================&lt;BR /&gt;IPP would recommend using cpu_p8(y8) code for this processor&lt;/P&gt;
&lt;P&gt;================&lt;BR /&gt;Feature Flags&lt;BR /&gt;================&lt;BR /&gt;Cores 4 - Number of cores per physical package&lt;BR /&gt;CMP / HTT 1 - Multi-Cores and/or Multi-Threading&lt;/P&gt;
&lt;P&gt;MOVBE 0 - MOVBE instruction. For the first time in Atom(TM)&lt;BR /&gt;MMX 1 - Intel(R) Architecture MMX(TM) technology is supported&lt;BR /&gt;SSE 1 - Streaming SIMD Extensions is supported&lt;BR /&gt;SSE2 1 - Streaming SIMD Extensions 2 is supported&lt;BR /&gt;SSE3 1 - Streaming SIMD Extensions 3 is supported&lt;BR /&gt;SSSE3 1 - Supplemental Streaming SIMD Extensions 3 is supported&lt;BR /&gt;SSE41 1 - Streaming SIMD Extensions 4 (SSE4.1) is supported&lt;BR /&gt;SSE42 1 - Streaming SIMD Extensions 4 (SSE4.2) is supported&lt;BR /&gt;STTNI 0 - STTNI Instructions&lt;BR /&gt;EM64T 1 - Intel(R) Extended Memory 64 Technology is supported&lt;BR /&gt;AVX 1 - CPU supports Intel(R) Advanced Vector Extensions instruction set&lt;BR /&gt;&lt;STRONG&gt;AVX_OS 0 - OS supports Intel(R) AVX&lt;/STRONG&gt;&lt;BR /&gt;AES 1 - AES instruction is supported&lt;BR /&gt;CLMUL 1 - PCLMULQDQ instruction is supported&lt;/P&gt;
&lt;P&gt;So Windows 7 doesn't support it... :(&lt;/P&gt;
&lt;P&gt;This will be a very common customer issue, so is there an easy way to prevent AVX instructions? Maybe I should init the dll with an older cpu id if I see AVX_OS = 0?&lt;/P&gt;
&lt;P&gt;Thanks&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 14:54:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931665#M16711</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-06-25T14:54:43Z</dc:date>
    </item>
    <item>
      <title>Interesting is why it selects</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931666#M16712</link>
      <description>&lt;P&gt;(dupe)&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 14:58:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931666#M16712</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-06-25T14:58:00Z</dc:date>
    </item>
    <item>
      <title>Interesting is why it selects</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931667#M16713</link>
      <description>&lt;P&gt;Interesting is why it selects cpu_e9 code by default when ippCpuInfo says "IPP would recommend using cpu_p8(y8) code for this processor"&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 14:58:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931667#M16713</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-06-25T14:58:18Z</dc:date>
    </item>
    <item>
      <title>You probably need to install</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931668#M16714</link>
      <description>&lt;P&gt;You probably need to install SP1 for your Windows 7 ?&lt;/P&gt;
&lt;P&gt;Regards,&lt;BR /&gt;Sergey&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 15:08:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931668#M16714</guid>
      <dc:creator>Sergey_K_Intel</dc:creator>
      <dc:date>2013-06-25T15:08:26Z</dc:date>
    </item>
    <item>
      <title>I understand, that would work</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931669#M16715</link>
      <description>&lt;P&gt;I understand, that would work for me the developer, but what can I do to support an unpatched Windows 7?&lt;/P&gt;
&lt;P&gt;I'm not saying I need AVX for unpatched Win 7, just an option that doesn't cause illegal instructions.&lt;/P&gt;
&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 15:16:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931669#M16715</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-06-25T15:16:00Z</dc:date>
    </item>
    <item>
      <title>While waiting for a new IPP</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931670#M16716</link>
      <description>&lt;P&gt;While waiting for a new IPP that selects y8 instead of e9, you'd have to use get cpu features and then call init cpu (your selected cpu), where your selected cpu is the one lower than avx if the os does not support avx.&lt;/P&gt;
&lt;P&gt;Here is some of my code that selects an IPP cpu depending on features (32-bit case):&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lib_enum lib;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ipp64u pFeaturesMask;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Ipp32u pCpuidInfoRegs[4];&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IppStatus status;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;status= ippInit();&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// init local ippCore&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if( status == ippStsNoErr )&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;status= ippGetCpuFeatures( &amp;amp;pFeaturesMask, pCpuidInfoRegs );&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if( status != ippStsNoErr )&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// error getting features&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;lib= LIB_W7;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// lowest supported is W7 = SSE2&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else if( (pFeaturesMask &amp;amp; (Ipp64u)(ippCPUID_AVX2)) &amp;amp;&amp;amp;&amp;nbsp; (pFeaturesMask &amp;amp; (Ipp64u)(ippAVX_ENABLEDBYOS)) )&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;lib= LIB_H9;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// AVX2&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else if( (pFeaturesMask &amp;amp; (Ipp64u)(ippCPUID_AVX)) &amp;amp;&amp;amp;&amp;nbsp; (pFeaturesMask &amp;amp; (Ipp64u)(ippAVX_ENABLEDBYOS)) )&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;lib= LIB_G9;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// AVX&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else if( pFeaturesMask &amp;amp; (Ipp64u)(ippCPUID_SSE42) )&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;lib= LIB_P8;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// SSE42&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else if( pFeaturesMask &amp;amp; (Ipp64u)(ippCPUID_SSSE3) ) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if( pFeaturesMask &amp;amp; (Ipp64u)(ippCpuBonnell) )&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; lib= LIB_S8;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// SSSE3 Atom optimized&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; lib= LIB_V8;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// SSSE3&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;} else&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;lib= LIB_W7;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 16:15:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931670#M16716</guid>
      <dc:creator>Thomas_Jensen1</dc:creator>
      <dc:date>2013-06-25T16:15:20Z</dc:date>
    </item>
    <item>
      <title>Thanks for that Thomas.</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931671#M16717</link>
      <description>&lt;P&gt;Thanks for that Thomas.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2013 22:01:40 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931671#M16717</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-06-25T22:01:40Z</dc:date>
    </item>
    <item>
      <title>Hello, </title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931672#M16718</link>
      <description>&lt;P&gt;Hello,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Which verions of IPP are using now? &amp;nbsp; It is support that Ippinit() function will check both of the OS, and supported CPU feature.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards&lt;BR /&gt;Chao&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jun 2013 06:44:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931672#M16718</guid>
      <dc:creator>Chao_Y_Intel</dc:creator>
      <dc:date>2013-06-28T06:44:01Z</dc:date>
    </item>
    <item>
      <title>7.0.205</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931673#M16719</link>
      <description>&lt;P&gt;7.0.205&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jun 2013 13:31:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931673#M16719</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-06-28T13:31:06Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;...7.0.205</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931674#M16720</link>
      <description>&amp;gt;&amp;gt;...&lt;STRONG&gt;7.0.205&lt;/STRONG&gt;

I have that version of IPP library and I could verify &lt;STRONG&gt;ippsZero_32f&lt;/STRONG&gt; function on &lt;STRONG&gt;Ivy Bridge&lt;/STRONG&gt; ( i7 ). Let me know if that test case looks right as a reproducer:

#include "ipps.h"

int &lt;STRONG&gt;main&lt;/STRONG&gt;( void )
{
Ipp32f fData[ 256 ];

IppStatus st = ::&lt;STRONG&gt;ippsZero_32f&lt;/STRONG&gt;( &amp;amp;fData[0], 256 );

return ( int )1;
}</description>
      <pubDate>Sun, 30 Jun 2013 05:48:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931674#M16720</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2013-06-30T05:48:00Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;&gt;&gt;...7.0.205</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931675#M16721</link>
      <description>&amp;gt;&amp;gt;&amp;gt;&amp;gt;...&lt;STRONG&gt;7.0.205&lt;/STRONG&gt;
&amp;gt;&amp;gt;
&amp;gt;&amp;gt;I have that version of IPP library and I could verify &lt;STRONG&gt;ippsZero_32f&lt;/STRONG&gt; function on Ivy Bridge ( i7 ).

Daven, There are two news:

A good one: I didn't have any issues or problems on Ivy Bridge system with IPP version 7.1.

A not good one: Unfortunately, I don't have a set of 64-bit IPP DLLs for version 7.0.205.

Here are all results of my verification:

// Verification for DSP domain DLL ( AVX / e9 ) is needed
/*
List of IPP DLLs used:

24/09/2012  11:25 PM           144,864 ippcore-7.1.dll
24/09/2012  11:25 PM           240,608 ipps-7.1.dll
25/09/2012  01:21 AM         5,499,360 ippse9-7.1.dll
*/

#include "stdio.h"
#include "ipps.h"

int &lt;STRONG&gt;main&lt;/STRONG&gt;( void )
{
	Ipp32f fData[ 256 ];

	&lt;STRONG&gt;printf&lt;/STRONG&gt;( "Test Started\n" );

	IppStatus st = ::&lt;STRONG&gt;ippsZero_32f&lt;/STRONG&gt;( &amp;amp;fData[0], 256 );

	&lt;STRONG&gt;printf&lt;/STRONG&gt;( "Test Completed\n" );

	return ( int )1;
}

&lt;STRONG&gt;[ Output ]&lt;/STRONG&gt;

Test Started
Test Completed

Let me know if you have any questions.</description>
      <pubDate>Mon, 01 Jul 2013 00:40:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931675#M16721</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2013-07-01T00:40:00Z</dc:date>
    </item>
    <item>
      <title>Here are some additional</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931676#M16722</link>
      <description>Here are some additional technical details:

Dell Precision Mobile M4700
Intel Core i7-3840QM ( Ivy Bridge / 4 cores / 8 logical CPUs / ark.intel.com/compare/70846 )

and the test case is attached.</description>
      <pubDate>Mon, 01 Jul 2013 00:44:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931676#M16722</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2013-07-01T00:44:47Z</dc:date>
    </item>
    <item>
      <title>Quote:Sergey Kostrov wrote:&gt;&gt;</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931677#M16723</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Sergey Kostrov wrote:&lt;BR /&gt;&amp;gt;&amp;gt;...&lt;STRONG&gt;7.0.205&lt;/STRONG&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;I have that version of IPP library and I could verify &lt;STRONG&gt;ippsZero_32f&lt;/STRONG&gt; function on &lt;STRONG&gt;Ivy Bridge&lt;/STRONG&gt; ( i7 ). Let me know if that test case looks right as a reproducer:&lt;/P&gt;
&lt;P&gt;#include "ipps.h"&lt;/P&gt;
&lt;P&gt;int &lt;STRONG&gt;main&lt;/STRONG&gt;( void )&lt;BR /&gt; {&lt;BR /&gt; Ipp32f fData[ 256 ];&lt;/P&gt;
&lt;P&gt;IppStatus st = ::&lt;STRONG&gt;ippsZero_32f&lt;/STRONG&gt;( &amp;amp;fData[0], 256 );&lt;/P&gt;
&lt;P&gt;return ( int )1;&lt;BR /&gt; }&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Yes, that reproduced the illegal instruction error.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 03 Jul 2013 17:50:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931677#M16723</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-07-03T17:50:51Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;...Yes, that reproduced the</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931678#M16724</link>
      <description>&amp;gt;&amp;gt;...Yes, that reproduced the illegal instruction error...

Use &lt;STRONG&gt;MsInfo32.exe&lt;/STRONG&gt; and post a complete information about OS.</description>
      <pubDate>Wed, 03 Jul 2013 22:09:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931678#M16724</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2013-07-03T22:09:10Z</dc:date>
    </item>
    <item>
      <title>This is a short follow up and</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931679#M16725</link>
      <description>This is a short follow up and I'd like to note that functions &lt;STRONG&gt;ippsZero_xxx&lt;/STRONG&gt; are Not in the list of IPP functions optimized to benefit from Haswell's new instructions. Take a look at: &lt;A href="http://software.intel.com/en-us/articles/haswell-support-in-intel-ipp" target="_blank"&gt;http://software.intel.com/en-us/articles/haswell-support-in-intel-ipp&lt;/A&gt;</description>
      <pubDate>Fri, 05 Jul 2013 05:05:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931679#M16725</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2013-07-05T05:05:09Z</dc:date>
    </item>
    <item>
      <title>Sergey,</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931680#M16726</link>
      <description>&lt;P&gt;Sergey,&lt;/P&gt;
&lt;P&gt;this list is not fully precise - this list contains only functions that have got hand-developed optimization. It doesn't take into account functions that have nested calls to hand-optimized functions (for example convolution uses ippzero, etc.) and + 1 more thing - the whole library is built with icc/icl with the corresponding optimization switch - so new instructions can be inserted by compiler in ANY function.&lt;/P&gt;
&lt;P&gt;regards, Igor&lt;/P&gt;</description>
      <pubDate>Wed, 10 Jul 2013 15:00:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931680#M16726</guid>
      <dc:creator>Igor_A_Intel</dc:creator>
      <dc:date>2013-07-10T15:00:36Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;...this list is not fully</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931681#M16727</link>
      <description>&amp;gt;&amp;gt;...this list is not fully precise - this list contains only functions that have got hand-developed optimization. It doesn't take
&amp;gt;&amp;gt;into account functions that have nested calls to hand-optimized functions (for example convolution uses ippzero, etc.)...

Thanks for the information and it would be nice to have a comment in the article about this. Please consider it as a Feature Request ( some kind ).</description>
      <pubDate>Thu, 11 Jul 2013 01:04:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931681#M16727</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2013-07-11T01:04:39Z</dc:date>
    </item>
    <item>
      <title>Either way, surely the</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931682#M16728</link>
      <description>&lt;P&gt;Either way, surely the disassembly shows that ymm* registers are being used, and to my knowledge they are AVX registers.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I did more tests:&lt;/P&gt;
&lt;P&gt;ippInit(),&amp;nbsp;ippInitCpu(ippCpuSSE42), &amp;nbsp;and&amp;nbsp;ippInitCpu(ippCpuSSE41)&amp;nbsp;choose the e9_ippsZero_32f code, and crash with the illegal instruction error&lt;BR /&gt;ippInitCpu(ippCpuSSE3) chooses the m7_ippsZero_32f code and doesn't crash&lt;BR /&gt;&lt;BR /&gt;I should repeat this is only for 64 bit; 32 bit seems to choose the right code with just ippInit().&lt;/P&gt;
&lt;P&gt;So, according to the ippCpuInfo app, I should be selecting cpu_y8 code for my condition (AVX cpu but no AVX os), though this isn't an option from the above tests.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I guess the only thing to do is update the IPP license...&lt;/P&gt;</description>
      <pubDate>Thu, 11 Jul 2013 21:49:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Illegal-instruction-from-custom-64-bit-DLL/m-p/931682#M16728</guid>
      <dc:creator>daven-hughes</dc:creator>
      <dc:date>2013-07-11T21:49:48Z</dc:date>
    </item>
  </channel>
</rss>

