topic Get all eigenvalues of a large sparse non-hermitian complex matrix in Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Get-all-eigenvalues-of-a-large-sparse-non-hermitian-complex/m-p/1184009#M29476
<P>We need to get <STRONG>all</STRONG> (a part of them won't suffice) the <STRONG>eigenvalues</STRONG> of a <STRONG>very large</STRONG> (≈10^6x10^6) <STRONG>very sparse</STRONG> (≈10^7 non-zero entries) <STRONG>non-hermitian</STRONG> <STRONG>complex </STRONG>(but <STRONG>symmetric</STRONG>!) matrix. We have access to computer clusters from with Intel® Gold 6148 Skylake @ 2.4 [GHz] CPUs with up to 752 [GB] of RAM each (shared or distributed memory). The cluster already have an installation of Intel® Math Kernel Library.</P><P>MKL : Major version: 2018, Minor version: 0, Update version: 3, Build: 20180406, Platform: Intel(R) 64 architecture, Processor optimization: Intel(R) Advanced Vector Extensions 512 (Intel(R) AVX-512) enabled processors.</P><P>OS : CentOS Linux release 7.7.1908 (Core).</P><P>Compiler : mpicc (ICC) 18.0.3 20180410</P><P>Questions :</P><OL><LI>Which package/library/function should I use ? I thought I could use <EM>zfeast_hcsrev</EM> from FEAST, but from what the <A href="https://software.intel.com/en-us/mkl-developer-reference-c-extended-eigensolver-naming-conventions">documentation</A> says, it seems like it's restricted to hermitian matrices (the h in hcsr stands for hermitian).</LI><LI>If that function takes parameters apart from the matrix, do they have default values. If they don't, what would you recommend or where could I find information to determine those values myself ?</LI><LI>Is there an easy way to import my matrix which is in Matrix Market format (.mtx) to pass it to that function ?</LI><LI>Is there any particular compiler options I should use ?</LI></OL><P>(I'm a graduate student in physics so computer science isn't my specialty)</P><P>Thanks,</P><P>Gabriel</P>Wed, 12 Feb 2020 18:51:34 GMTLongpre__Gabriel2020-02-12T18:51:34ZGet all eigenvalues of a large sparse non-hermitian complex matrix
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Get-all-eigenvalues-of-a-large-sparse-non-hermitian-complex/m-p/1184009#M29476
<P>We need to get <STRONG>all</STRONG> (a part of them won't suffice) the <STRONG>eigenvalues</STRONG> of a <STRONG>very large</STRONG> (≈10^6x10^6) <STRONG>very sparse</STRONG> (≈10^7 non-zero entries) <STRONG>non-hermitian</STRONG> <STRONG>complex </STRONG>(but <STRONG>symmetric</STRONG>!) matrix. We have access to computer clusters from with Intel® Gold 6148 Skylake @ 2.4 [GHz] CPUs with up to 752 [GB] of RAM each (shared or distributed memory). The cluster already have an installation of Intel® Math Kernel Library.</P><P>MKL : Major version: 2018, Minor version: 0, Update version: 3, Build: 20180406, Platform: Intel(R) 64 architecture, Processor optimization: Intel(R) Advanced Vector Extensions 512 (Intel(R) AVX-512) enabled processors.</P><P>OS : CentOS Linux release 7.7.1908 (Core).</P><P>Compiler : mpicc (ICC) 18.0.3 20180410</P><P>Questions :</P><OL><LI>Which package/library/function should I use ? I thought I could use <EM>zfeast_hcsrev</EM> from FEAST, but from what the <A href="https://software.intel.com/en-us/mkl-developer-reference-c-extended-eigensolver-naming-conventions">documentation</A> says, it seems like it's restricted to hermitian matrices (the h in hcsr stands for hermitian).</LI><LI>If that function takes parameters apart from the matrix, do they have default values. If they don't, what would you recommend or where could I find information to determine those values myself ?</LI><LI>Is there an easy way to import my matrix which is in Matrix Market format (.mtx) to pass it to that function ?</LI><LI>Is there any particular compiler options I should use ?</LI></OL><P>(I'm a graduate student in physics so computer science isn't my specialty)</P><P>Thanks,</P><P>Gabriel</P>Wed, 12 Feb 2020 18:51:34 GMThttps://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Get-all-eigenvalues-of-a-large-sparse-non-hermitian-complex/m-p/1184009#M29476Longpre__Gabriel2020-02-12T18:51:34ZYes, these routines ( zfeast
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Get-all-eigenvalues-of-a-large-sparse-non-hermitian-complex/m-p/1184010#M29477
<P>Yes, these routines ( zfeast_hcsrev) are restricted to hermitian matrixes.</P><P>There are some default parameters, which you could check from here - <A href="https://software.intel.com/en-us/mkl-developer-reference-c-extended-eigensolver-input-parameters. " target="_blank">https://software.intel.com/en-us/mkl-developer-reference-c-extended-eigensolver-input-parameters. </A>;</P><P>You could try to convert mtx format to csr by using mkl_zcsrcoo() routines.</P><P>You don't need to use some specific compiler options.</P>Wed, 26 Feb 2020 05:51:14 GMThttps://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Get-all-eigenvalues-of-a-large-sparse-non-hermitian-complex/m-p/1184010#M29477Gennady_F_Intel2020-02-26T05:51:14ZHello Gabriel,
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Get-all-eigenvalues-of-a-large-sparse-non-hermitian-complex/m-p/1184011#M29478
<P>Hello Gabriel,</P><P>In general, when there is a need for solving a <STRONG>full </STRONG>eigenproblem for a huge matrix, a question should be raised immediately: is it a right problem which you are looking at? Especially if the operator (matrix) is not s.p.d in the corresponding space.</P><P>What kind of application do you have which needs full solution to an eigenproblem?</P><P>Best,<BR />Kirill</P>Thu, 27 Feb 2020 17:14:48 GMThttps://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Get-all-eigenvalues-of-a-large-sparse-non-hermitian-complex/m-p/1184011#M29478Kirill_V_Intel2020-02-27T17:14:48Z