<?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 DGESVD Access Violation for m&amp;gt;n particular values in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DGESVD-Access-Violation-for-m-gt-n-particular-values/m-p/910341#M12098</link>
    <description>&lt;P&gt;This testprogram creates an access violation under VS C++ 6.0 with MKL 8.0.1&lt;/P&gt;
&lt;P&gt;The values 350x320 is important while for some combinations of sizes it works correctly&lt;/P&gt;
&lt;P&gt;For example: 350x220 is faulty, 350x219 is ok, 500x314 is faulty, 500x313 is ok.&lt;/P&gt;
&lt;P&gt;What can be the problem?&lt;/P&gt;
&lt;P&gt;char jobu = 'S';&lt;BR /&gt;char jobvt = 'S';&lt;BR /&gt;int m = 350;&lt;BR /&gt;int n = 320;&lt;BR /&gt;int minmn= m&amp;gt;n?n:m;&lt;BR /&gt;int maxmn= m&amp;gt;n?m:n;&lt;BR /&gt;double* a = new double[m*n];&lt;BR /&gt;double* u = new double[m*minmn];&lt;BR /&gt;double* s = new double[minmn];&lt;BR /&gt;double* vt= new double[minmn*n];&lt;BR /&gt;int lda = m;&lt;BR /&gt;int ldu = m;&lt;BR /&gt;int ldvt = minmn;&lt;/P&gt;
&lt;P&gt;int info = 0;&lt;BR /&gt;for ( int i = 0 ; i &amp;lt; m*n ; i++ ) a&lt;I&gt;=((double)rand())/((double)RAND_MAX);&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;int lwork = -1;&lt;BR /&gt;double* work = new double[1];&lt;BR /&gt;dgesvd(&amp;amp;jobu , &amp;amp;jobvt , &amp;amp;m , &amp;amp;n , a , &amp;amp;lda , s , u, &amp;amp;ldu , vt , &amp;amp;ldvt , work , &amp;amp;lwork , &amp;amp;info );&lt;BR /&gt;lwork = (int)work[0];&lt;BR /&gt;delete work;&lt;BR /&gt;work = new double[lwork];&lt;/P&gt;
&lt;P&gt;dgesvd(&amp;amp;jobu , &amp;amp;jobvt , &amp;amp;m , &amp;amp;n , a , &amp;amp;lda , s , u, &amp;amp;ldu , vt , &amp;amp;ldvt , work , &amp;amp;lwork , &amp;amp;info );&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
    <pubDate>Wed, 20 Sep 2006 21:37:23 GMT</pubDate>
    <dc:creator>sragner</dc:creator>
    <dc:date>2006-09-20T21:37:23Z</dc:date>
    <item>
      <title>DGESVD Access Violation for m&gt;n particular values</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DGESVD-Access-Violation-for-m-gt-n-particular-values/m-p/910341#M12098</link>
      <description>&lt;P&gt;This testprogram creates an access violation under VS C++ 6.0 with MKL 8.0.1&lt;/P&gt;
&lt;P&gt;The values 350x320 is important while for some combinations of sizes it works correctly&lt;/P&gt;
&lt;P&gt;For example: 350x220 is faulty, 350x219 is ok, 500x314 is faulty, 500x313 is ok.&lt;/P&gt;
&lt;P&gt;What can be the problem?&lt;/P&gt;
&lt;P&gt;char jobu = 'S';&lt;BR /&gt;char jobvt = 'S';&lt;BR /&gt;int m = 350;&lt;BR /&gt;int n = 320;&lt;BR /&gt;int minmn= m&amp;gt;n?n:m;&lt;BR /&gt;int maxmn= m&amp;gt;n?m:n;&lt;BR /&gt;double* a = new double[m*n];&lt;BR /&gt;double* u = new double[m*minmn];&lt;BR /&gt;double* s = new double[minmn];&lt;BR /&gt;double* vt= new double[minmn*n];&lt;BR /&gt;int lda = m;&lt;BR /&gt;int ldu = m;&lt;BR /&gt;int ldvt = minmn;&lt;/P&gt;
&lt;P&gt;int info = 0;&lt;BR /&gt;for ( int i = 0 ; i &amp;lt; m*n ; i++ ) a&lt;I&gt;=((double)rand())/((double)RAND_MAX);&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;int lwork = -1;&lt;BR /&gt;double* work = new double[1];&lt;BR /&gt;dgesvd(&amp;amp;jobu , &amp;amp;jobvt , &amp;amp;m , &amp;amp;n , a , &amp;amp;lda , s , u, &amp;amp;ldu , vt , &amp;amp;ldvt , work , &amp;amp;lwork , &amp;amp;info );&lt;BR /&gt;lwork = (int)work[0];&lt;BR /&gt;delete work;&lt;BR /&gt;work = new double[lwork];&lt;/P&gt;
&lt;P&gt;dgesvd(&amp;amp;jobu , &amp;amp;jobvt , &amp;amp;m , &amp;amp;n , a , &amp;amp;lda , s , u, &amp;amp;ldu , vt , &amp;amp;ldvt , work , &amp;amp;lwork , &amp;amp;info );&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Sep 2006 21:37:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DGESVD-Access-Violation-for-m-gt-n-particular-values/m-p/910341#M12098</guid>
      <dc:creator>sragner</dc:creator>
      <dc:date>2006-09-20T21:37:23Z</dc:date>
    </item>
    <item>
      <title>Re: DGESVD Access Violation for m&gt;n particular values</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DGESVD-Access-Violation-for-m-gt-n-particular-values/m-p/910342#M12099</link>
      <description>&lt;P&gt;&lt;A href="https://community.intel.com/en-us/forums//topic/49120"&gt;http://softwareforums.intel.com/en-us/forums//topic/49120&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Somebody has similar problems as I see.&lt;/P&gt;
&lt;P&gt;if I switch jobu to 'N' it works fine (obviously it doesn't calculate U).&lt;/P&gt;
&lt;P&gt;The only solution was to complete the matrix to square form with zeros and than extract the solution from the resulting two NxN and Nx1 matrices. This is bad and waste and hack but works till there is a fix for it.&lt;/P&gt;
&lt;P&gt;Laszlo&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 21 Sep 2006 17:22:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DGESVD-Access-Violation-for-m-gt-n-particular-values/m-p/910342#M12099</guid>
      <dc:creator>sragner</dc:creator>
      <dc:date>2006-09-21T17:22:00Z</dc:date>
    </item>
    <item>
      <title>Re: DGESVD Access Violation for m&gt;n particular values</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DGESVD-Access-Violation-for-m-gt-n-particular-values/m-p/910343#M12100</link>
      <description>It appears that in version 801 both SGESVD and DGESVD (but not ZGESVD) have this problem for ill-conditioned matrices. Does anyone know if this has been fixed in subsequent MKL releases?&lt;BR /&gt;&lt;BR /&gt;Beau Paisley&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 26 Sep 2006 04:10:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DGESVD-Access-Violation-for-m-gt-n-particular-values/m-p/910343#M12100</guid>
      <dc:creator>beaupaisley</dc:creator>
      <dc:date>2006-09-26T04:10:34Z</dc:date>
    </item>
  </channel>
</rss>

