<?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: Segmentation fault when using some IPP routine from a JNI i in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906164#M13486</link>
    <description>&lt;P&gt;Folks,&lt;BR /&gt;&lt;BR /&gt;The issues (with signal handling by libiomp5) described in the previous posts were resolved in Composer 2011 beta update 2 and Compiler Pro 12.0 beta update 1. Now the defualt behaviour of libiomp is do nothandle signals. But it can be turned on by setting (environment variable) KMP_HANDLE_SIGNALS to 1. Please, try to run your tests with using the latest Composer (at least Composer 2011 beta update 2 or Compiler Pro 12.0 beta update 1) .&lt;BR /&gt;&lt;BR /&gt;--andrew&lt;/P&gt;</description>
    <pubDate>Thu, 02 Jun 2011 13:07:18 GMT</pubDate>
    <dc:creator>Andrei_Moskalev__Int</dc:creator>
    <dc:date>2011-06-02T13:07:18Z</dc:date>
    <item>
      <title>Segmentation fault when using some IPP routine from a JNI interface</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906159#M13481</link>
      <description>&lt;P&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I am not sure whether this is the right place to ask this question since it is related to both JNI and IPP.&lt;BR /&gt;&lt;BR /&gt;When I run a few IPP routines (ex: ippiFilter, ippiRectStdDev) from a JNI interface, I get this message :&lt;BR /&gt;&lt;BR /&gt;~~~~&lt;BR /&gt;&lt;STRONG&gt;Warning: SIGSEGV handler expected:libjvm.so+0x594f90 found:libguide.so+0x486ec&lt;BR /&gt;Signal Handlers:&lt;BR /&gt;SIGSEGV: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGBUS: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGFPE: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGPIPE: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGXFSZ: [libjvm.so+0x594f90], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004&lt;BR /&gt;SIGILL: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000&lt;BR /&gt;SIGUSR2: [libjvm.so+0x597750], sa_mask[0]=0x00000000, sa_flags=0x10000004&lt;BR /&gt;SIGHUP: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGINT: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGTERM: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGQUIT: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;Warning: SIGILL handler expected:libjvm.so+0x594f90 found:libguide.so+0x486ec&lt;BR /&gt;Signal Handlers:&lt;BR /&gt;SIGSEGV: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;SIGBUS: [libguide.so+0x486ec], sa_mask[0]=0x7ffbfeff, sa_flags=0x00000000&lt;BR /&gt;....&lt;BR /&gt;&lt;/STRONG&gt;~~~~&lt;BR /&gt;&lt;BR /&gt;However, running the exact same thing from a straight C++ program works fine. This happens only on a Linux64 computer (I have no problem under windows).&lt;BR /&gt;&lt;BR /&gt;I am not sure whether this message really means a segmentation fault because when I create a real one on purpose, I get this:&lt;BR /&gt;&lt;BR /&gt;~~~&lt;BR /&gt;&lt;STRONG&gt;#&lt;BR /&gt;# A fatal error has been detected by the Java Runtime Environment:&lt;BR /&gt;#&lt;BR /&gt;# SIGSEGV (0xb) at pc=0x00002aaad63ae71f, pid=17178, tid=1094490432&lt;BR /&gt;#&lt;BR /&gt;# JRE version: 6.0_16-b01&lt;BR /&gt;# Java VM: Java HotSpot 64-Bit Server VM (14.2-b01 mixed mode linux-amd64 )&lt;BR /&gt;# Problematic frame:&lt;BR /&gt;# C [libmyJNI.so+0x71f] Java_IPP_StdDev_TestStdDev+0x13&lt;BR /&gt;#&lt;BR /&gt;# An error report file with more information is saved as:&lt;BR /&gt;# /home/gsoucy/SVN/C++/Applications/Test/Test_ImageIO/hs_err_pid17178.log&lt;BR /&gt;#&lt;BR /&gt;# If you would like to submit a bug report, please visit:&lt;BR /&gt;# &lt;A href="http://java.sun.com/webapps/bugreport/crash.jsp" target="_blank"&gt;http://java.sun.com/webapps/bugreport/crash.jsp&lt;/A&gt;&lt;BR /&gt;# The crash happened outside the Java Virtual Machine in native code.&lt;BR /&gt;# See problematic&lt;/STRONG&gt; frame for where to report the bug.&lt;BR /&gt;#&lt;BR /&gt;~~~&lt;BR /&gt;&lt;BR /&gt;which is much more clear. &lt;BR /&gt;&lt;BR /&gt;I cut my program to the minimum to test the problem, here it is:&lt;BR /&gt;&lt;BR /&gt;~~~&lt;BR /&gt;&lt;STRONG&gt;// integral image&lt;BR /&gt;int width = 500;&lt;BR /&gt;int height = 500;&lt;BR /&gt;int srcStep = width*4;&lt;BR /&gt;Ipp32f* pSrc = (Ipp32f*) malloc(srcStep * height);&lt;BR /&gt;&lt;BR /&gt;// sqr integrsal image&lt;BR /&gt;int sqrHeight = height;&lt;BR /&gt;int sqrWidth = width;&lt;BR /&gt;int sqrStep = sqrWidth*8;&lt;BR /&gt;&lt;BR /&gt;Ipp64f* pSqr = (Ipp64f*) malloc(sqrStep * sqrHeight);&lt;BR /&gt;&lt;BR /&gt;// dst image&lt;BR /&gt;IppiRect rect = {0, 0, 20, 20};&lt;BR /&gt;IppiSize roi = {width-rect.width-1, height-rect.height-1};&lt;BR /&gt;&lt;BR /&gt;int dstHeight = roi.height;&lt;BR /&gt;int dstWidth = roi.width;&lt;BR /&gt;int dstStep = dstWidth * 4;&lt;BR /&gt;&lt;BR /&gt;Ipp32f* pDst = (Ipp32f*) malloc(dstStep * dstHeight);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;IppStatus ret = ippiRectStdDev_32f_C1R(pSrc, srcStep, pSqr, sqrStep, pDst, dstStep, roi, rect);&lt;BR /&gt;&lt;BR /&gt;if (ret == ippStsOk)&lt;BR /&gt;printf("Ok!!\n");&lt;BR /&gt;else&lt;BR /&gt;printf("Failed!! (%d)\n", ret);&lt;/STRONG&gt;&lt;BR /&gt;~~~&lt;BR /&gt;&lt;BR /&gt;I use exactly the same code in the straight C++ and in the JNI programs: it works without any error message in C++ and complains about the error handlers in JNI.&lt;BR /&gt;&lt;BR /&gt;Anybody sees what I am doing wrong? Any help would be appreciated.&lt;BR /&gt;&lt;BR /&gt;Thanks!&lt;BR /&gt;&lt;BR /&gt;Gilbert&lt;/P&gt;</description>
      <pubDate>Wed, 21 Oct 2009 22:36:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906159#M13481</guid>
      <dc:creator>georgiswan</dc:creator>
      <dc:date>2009-10-21T22:36:58Z</dc:date>
    </item>
    <item>
      <title>Re: Segmentation fault when using some IPP routine from a JNI i</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906160#M13482</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
It looks like you use old Intel OpenMP run time library (libguide)somewhere in your application. This is not compatible with the latest Intel OpenMP library (libiomp5) which was used in IPP 6.1 build.&lt;BR /&gt;&lt;BR /&gt;So if you can move to new OpenMP run time this problem should be fixed. Otherwise there is no way to use both OpenMP run time libraries in single application&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt; Vladimir&lt;BR /&gt;</description>
      <pubDate>Thu, 22 Oct 2009 16:25:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906160#M13482</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2009-10-22T16:25:14Z</dc:date>
    </item>
    <item>
      <title>Re: Segmentation fault when using some IPP routine from a JNI i</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906161#M13483</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="margin-top: 5px; width: 100%;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/336498"&gt;Vladimir Dudnik (Intel)&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;It looks like you use old Intel OpenMP run time library (libguide)somewhere in your application. This is not compatible with the latest Intel OpenMP library (libiomp5) which was used in IPP 6.1 build.&lt;BR /&gt;&lt;BR /&gt;So if you can move to new OpenMP run time this problem should be fixed. Otherwise there is no way to use both OpenMP run time libraries in single application&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt; Vladimir&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;Thanks for the reply Vladimir. &lt;BR /&gt;&lt;BR /&gt;You are right, I was using libguide. I changed my Makfile to use libiomp5 but I still get the same error (I can see that my program is now using libiomp5 with 'ldd'). I think that this is a JNI problem. I will try to see on that side. Thanks.&lt;BR /&gt;</description>
      <pubDate>Fri, 23 Oct 2009 16:38:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906161#M13483</guid>
      <dc:creator>georgiswan</dc:creator>
      <dc:date>2009-10-23T16:38:30Z</dc:date>
    </item>
    <item>
      <title>Re: Segmentation fault when using some IPP routine from a JNI i</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906162#M13484</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/332770"&gt;georgiswan&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;
&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
&lt;BR /&gt;Thanks for the reply Vladimir. &lt;BR /&gt;&lt;BR /&gt;You are right, I was using libguide. I changed my Makfile to use libiomp5 but I still get the same error (I can see that my program is now using libiomp5 with 'ldd'). I think that this is a JNI problem. I will try to see on that side. Thanks.&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
Hello,&lt;BR /&gt;&lt;BR /&gt;i had a quite similar problem with intel mkl and java (32-bit Linux) . The jvm crash was exactly looking as yours, and I &lt;BR /&gt;really spent a lot of time to figure out what happened. The solution that worked for me:&lt;BR /&gt;- the JVM is using the same signals (SIGSEGV , ...) as intel mkl is using. Then, the jvm crashes, because it interprets mkl's signals&lt;BR /&gt;wrong. &lt;BR /&gt;After simply including the libjsig.so library with the environment variable export LD_PRELOAD=&lt;PATH_TO_LIB&gt;/libjsig.so&lt;BR /&gt;everything was working fine. I hope this helps also for your issue.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Andreas.&lt;BR /&gt;&lt;BR /&gt;&lt;/PATH_TO_LIB&gt;</description>
      <pubDate>Sat, 21 Nov 2009 10:11:08 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906162#M13484</guid>
      <dc:creator>Andreas_Muesing</dc:creator>
      <dc:date>2009-11-21T10:11:08Z</dc:date>
    </item>
    <item>
      <title>Re: Segmentation fault when using some IPP routine from a JNI i</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906163#M13485</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/453229"&gt;Andreas Muesing&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;
&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Hello,&lt;BR /&gt;&lt;BR /&gt;i had a quite similar problem with intel mkl and java (32-bit Linux) . The jvm crash was exactly looking as yours, and I &lt;BR /&gt;really spent a lot of time to figure out what happened. The solution that worked for me:&lt;BR /&gt;- the JVM is using the same signals (SIGSEGV , ...) as intel mkl is using. Then, the jvm crashes, because it interprets mkl's signals&lt;BR /&gt;wrong. &lt;BR /&gt;After simply including the libjsig.so library with the environment variable export LD_PRELOAD=&lt;PATH_TO_LIB&gt;/libjsig.so&lt;BR /&gt;everything was working fine. I hope this helps also for your issue.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Andreas.&lt;BR /&gt;&lt;BR /&gt;&lt;/PATH_TO_LIB&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
my problems code&lt;BR /&gt;</description>
      <pubDate>Sun, 22 Nov 2009 11:10:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906163#M13485</guid>
      <dc:creator>nonamez</dc:creator>
      <dc:date>2009-11-22T11:10:33Z</dc:date>
    </item>
    <item>
      <title>Re: Segmentation fault when using some IPP routine from a JNI i</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906164#M13486</link>
      <description>&lt;P&gt;Folks,&lt;BR /&gt;&lt;BR /&gt;The issues (with signal handling by libiomp5) described in the previous posts were resolved in Composer 2011 beta update 2 and Compiler Pro 12.0 beta update 1. Now the defualt behaviour of libiomp is do nothandle signals. But it can be turned on by setting (environment variable) KMP_HANDLE_SIGNALS to 1. Please, try to run your tests with using the latest Composer (at least Composer 2011 beta update 2 or Compiler Pro 12.0 beta update 1) .&lt;BR /&gt;&lt;BR /&gt;--andrew&lt;/P&gt;</description>
      <pubDate>Thu, 02 Jun 2011 13:07:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Segmentation-fault-when-using-some-IPP-routine-from-a-JNI/m-p/906164#M13486</guid>
      <dc:creator>Andrei_Moskalev__Int</dc:creator>
      <dc:date>2011-06-02T13:07:18Z</dc:date>
    </item>
  </channel>
</rss>

