<?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 I don't think that we should in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057640#M21520</link>
    <description>&lt;P&gt;I don't think that we should consider every possible instance of integer overflow, division by zero, etc., in library routines to be a bug. The user has to take steps not to have or generate arrays that are too large to be addressed with 32-bit pointers if the 32-bit or LP64 versions of MKL are to be used.&lt;/P&gt;

&lt;P&gt;Have you tried compiling for X64 using the ILP64 MKL libraries? Is your huge matrix dense as well?&lt;/P&gt;</description>
    <pubDate>Tue, 30 Jun 2015 16:28:00 GMT</pubDate>
    <dc:creator>mecej4</dc:creator>
    <dc:date>2015-06-30T16:28:00Z</dc:date>
    <item>
      <title>Problem with ZCGESV</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057639#M21519</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;The problem I am facing is that &lt;/SPAN&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;ZCGESV&amp;nbsp;function crashes when matrix size is 46497 or more. When matrix size is, for example, 46202 everything works fine.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;From what I can see in LAPACK sources at&amp;nbsp;&lt;A href="http://www.netlib.org/lapack/explore-html/d5/d4a/zcgesv_8f_source.html"&gt;http://www.netlib.org/lapack/explore-html/d5/d4a/zcgesv_8f_source.html&lt;/A&gt;, there can be integer overflow for variable ptsx for large n as ptsx is declared as INTEGER:&lt;/P&gt;

&lt;DIV class="line" style="font-stretch: normal; font-size: 13px; line-height: 1; font-family: monospace, fixed; min-height: 13px; white-space: pre-wrap; word-wrap: break-word; text-indent: -53px; padding-left: 53px; padding-bottom: 0px; margin: 0px; -webkit-transition-property: background-color, box-shadow; transition-property: background-color, box-shadow; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; color: rgb(0, 0, 0);"&gt;
	&lt;PRE class="brush:fortran;"&gt;*     .. Local Scalars ..
INTEGER            i, iiter, ptsa, ptsx

* Set the indices PTSA, PTSX for referencing SA and SX in SWORK.
ptsa = 1
ptsx = ptsa + n*n&lt;/PRE&gt;

	&lt;P&gt;&amp;nbsp;&lt;/P&gt;

	&lt;P&gt;It looks like there is a similar problem in zcgesv routine in MKL. I couldn't find any information in MKL documentation related to this issue. Can anyone confirm that this is a bug in MKL?&lt;/P&gt;

	&lt;P&gt;&amp;nbsp;&lt;/P&gt;

	&lt;P&gt;Thanks,&lt;/P&gt;

	&lt;P&gt;Alexander&lt;/P&gt;
&lt;/DIV&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jun 2015 14:34:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057639#M21519</guid>
      <dc:creator>Alexander_D_6</dc:creator>
      <dc:date>2015-06-30T14:34:18Z</dc:date>
    </item>
    <item>
      <title>I don't think that we should</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057640#M21520</link>
      <description>&lt;P&gt;I don't think that we should consider every possible instance of integer overflow, division by zero, etc., in library routines to be a bug. The user has to take steps not to have or generate arrays that are too large to be addressed with 32-bit pointers if the 32-bit or LP64 versions of MKL are to be used.&lt;/P&gt;

&lt;P&gt;Have you tried compiling for X64 using the ILP64 MKL libraries? Is your huge matrix dense as well?&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jun 2015 16:28:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057640#M21520</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-06-30T16:28:00Z</dc:date>
    </item>
    <item>
      <title>Thanks for your reply.</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057641#M21521</link>
      <description>&lt;P&gt;Thanks for your reply.&lt;/P&gt;

&lt;P&gt;How can I take steps to ensure there is no integer overflow *inside* MKL routine? I have two similar matrices, first one with N=&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;46202&amp;nbsp;&lt;/SPAN&gt;and the second one with N=&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;46497. I call zcgesv and it solves the first matrix and crashes for the second one. The code is compiled for X64. Actually I don't know what exactly happens inside zcgesv, it was only my first assumption that integer overflows.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jun 2015 18:08:41 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057641#M21521</guid>
      <dc:creator>Alexander_D_6</dc:creator>
      <dc:date>2015-06-30T18:08:41Z</dc:date>
    </item>
    <item>
      <title>It would be useful for you to</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057642#M21522</link>
      <description>&lt;P&gt;It would be useful for you to post the source code for a case where the ZCGESV fails, and to provide information on how you built the program and what the crash messages were.&lt;/P&gt;</description>
      <pubDate>Tue, 30 Jun 2015 21:40:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057642#M21522</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-06-30T21:40:59Z</dc:date>
    </item>
    <item>
      <title>I have attached Visual Studio</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057643#M21523</link>
      <description>&lt;P&gt;I have attached Visual Studio project with full source code of the solver using zcgesv. Number of unknowns can be controlled from input.dat file. It's currently set to 47 000, which requires ~33 GB of RAM. Screenshot of access violation is also attached.&lt;/P&gt;

&lt;P&gt;And one more question. Does it make sense to declare swork array as&amp;nbsp;swork(:,:) or&amp;nbsp;swork(n,n,nrhs)? &amp;nbsp;If possible, will it provide any advantage?&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Alexander&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 01 Jul 2015 10:02:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057643#M21523</guid>
      <dc:creator>Alexander_D_6</dc:creator>
      <dc:date>2015-07-01T10:02:13Z</dc:date>
    </item>
    <item>
      <title>I do not have access to any</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057644#M21524</link>
      <description>&lt;P&gt;I do not have access to any machine with that much RAM.&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Alexander D. wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;And one more question. Does it make sense to declare swork array as&amp;nbsp;swork(:,:) or&amp;nbsp;swork(n,n,nrhs)? &amp;nbsp;If possible, will it provide any advantage?&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;You are using the F77 interface to Lapack/MKL. Therefore, the argument &lt;STRONG&gt;swork &lt;/STRONG&gt;is passed by reference, i.e., the address of the first element of the array is passed. Therefore, there will be absolutely no difference as far as the call to &lt;STRONG&gt;zcgesv &lt;/STRONG&gt;is concerned. Of course, there will be differences in the declaration (and allocation, if appropriate).&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 01 Jul 2015 14:09:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057644#M21524</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-07-01T14:09:58Z</dc:date>
    </item>
    <item>
      <title>The problem was solved by</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057645#M21525</link>
      <description>&lt;P&gt;The problem was solved by migrating to 64-bit integers and linking with ILP64 version of MKL.&lt;/P&gt;

&lt;P&gt;Thanks for your help.&lt;/P&gt;</description>
      <pubDate>Thu, 02 Jul 2015 08:26:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Problem-with-ZCGESV/m-p/1057645#M21525</guid>
      <dc:creator>Alexander_D_6</dc:creator>
      <dc:date>2015-07-02T08:26:30Z</dc:date>
    </item>
  </channel>
</rss>

