<?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 Which Matrix Storage Format should I choose for large sparse matrices in MKL in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Which-Matrix-Storage-Format-should-I-choose-for-large-sparse/m-p/831654#M5667</link>
    <description>Hi,&lt;BR /&gt;&lt;BR /&gt;I have a question with some large sparse symmetric matrices of dimensions 100*100. I need to do some computation with the matrices including eigenvalues, eigenvectors, inversion and multiplication by vetors.&lt;BR /&gt;&lt;BR /&gt;I could use BLAS sparse format to store the matrices, but that would be troublesome to calculate the eigenvalues and inversions. However, the matrix has only 5% non-zero values. If I don't use this format, it seems very wasteful.&lt;BR /&gt;&lt;BR /&gt;My question is, whether I should use the packed symmetric form to do all the computations with LAPACK/BLAS Level 2 libraries, or should I use sparse BLAS format to do some simple calculation and convert them to the packed symmetric form to do inversion and factorizations, or use the PARDISO interface?&lt;BR /&gt;&lt;BR /&gt;I'm doing some MCMC algorithm, which needs more than 10,000 iterations, for each iteration, I need to do one matrix inversion, two eigenvalue factorization and several sparse * vector multiplications. So I need some very effective way to perform the program.&lt;BR /&gt;&lt;BR /&gt;Thank you very much.&lt;BR /&gt;&lt;BR /&gt;Best,&lt;BR /&gt;Jun</description>
    <pubDate>Tue, 27 Apr 2010 16:25:03 GMT</pubDate>
    <dc:creator>junuylia</dc:creator>
    <dc:date>2010-04-27T16:25:03Z</dc:date>
    <item>
      <title>Which Matrix Storage Format should I choose for large sparse matrices in MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Which-Matrix-Storage-Format-should-I-choose-for-large-sparse/m-p/831654#M5667</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;I have a question with some large sparse symmetric matrices of dimensions 100*100. I need to do some computation with the matrices including eigenvalues, eigenvectors, inversion and multiplication by vetors.&lt;BR /&gt;&lt;BR /&gt;I could use BLAS sparse format to store the matrices, but that would be troublesome to calculate the eigenvalues and inversions. However, the matrix has only 5% non-zero values. If I don't use this format, it seems very wasteful.&lt;BR /&gt;&lt;BR /&gt;My question is, whether I should use the packed symmetric form to do all the computations with LAPACK/BLAS Level 2 libraries, or should I use sparse BLAS format to do some simple calculation and convert them to the packed symmetric form to do inversion and factorizations, or use the PARDISO interface?&lt;BR /&gt;&lt;BR /&gt;I'm doing some MCMC algorithm, which needs more than 10,000 iterations, for each iteration, I need to do one matrix inversion, two eigenvalue factorization and several sparse * vector multiplications. So I need some very effective way to perform the program.&lt;BR /&gt;&lt;BR /&gt;Thank you very much.&lt;BR /&gt;&lt;BR /&gt;Best,&lt;BR /&gt;Jun</description>
      <pubDate>Tue, 27 Apr 2010 16:25:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Which-Matrix-Storage-Format-should-I-choose-for-large-sparse/m-p/831654#M5667</guid>
      <dc:creator>junuylia</dc:creator>
      <dc:date>2010-04-27T16:25:03Z</dc:date>
    </item>
    <item>
      <title>Which Matrix Storage Format should I choose for large sparse ma</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Which-Matrix-Storage-Format-should-I-choose-for-large-sparse/m-p/831655#M5668</link>
      <description>&lt;P&gt;Jun,&lt;/P&gt;

&lt;P&gt;Yes, the sparse solver format like CSR is
more effective from consumed memory point of view versus the density storage
format. For example for your cases( 100x100) it will ~13 times more efficiency.&lt;/P&gt;

&lt;P&gt;But, nevertheless, in your case I wouldnt recommend you to use the sparse format and
use some additional conversion from sparse to density format representation ( all
these conversion functions are not threaded and therefore it make take some additional
time especially if into your case when you have 10000 iterations..)&lt;/P&gt;

it should be noted
that using PARDISO for such small cases is not efficient way from the
performance and scalability points of view.&lt;BR /&gt;
&lt;BR /&gt;--Gennady</description>
      <pubDate>Wed, 28 Apr 2010 09:00:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Which-Matrix-Storage-Format-should-I-choose-for-large-sparse/m-p/831655#M5668</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2010-04-28T09:00:53Z</dc:date>
    </item>
    <item>
      <title>Which Matrix Storage Format should I choose for large sparse ma</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Which-Matrix-Storage-Format-should-I-choose-for-large-sparse/m-p/831656#M5669</link>
      <description>Thank you, Gennady. &lt;BR /&gt;&lt;BR /&gt;So for my case, I should use the packed storage scheme so that I could use the routines for inversion and eigenvalues/eigenvectors for best performance.&lt;BR /&gt;&lt;BR /&gt;Jun</description>
      <pubDate>Wed, 28 Apr 2010 14:36:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Which-Matrix-Storage-Format-should-I-choose-for-large-sparse/m-p/831656#M5669</guid>
      <dc:creator>junuylia</dc:creator>
      <dc:date>2010-04-28T14:36:20Z</dc:date>
    </item>
  </channel>
</rss>

