Showing results for

- Intel Community
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
- Get all eigenvalues of a large sparse non-hermitian complex matrix

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

Highlighted
##

Longpre__Gabriel

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

02-12-2020
10:51 AM

11 Views

Get all eigenvalues of a large sparse non-hermitian complex matrix

We need to get **all** (a part of them won't suffice) the **eigenvalues** of a **very large** (≈10^6x10^6) **very sparse** (≈10^7 non-zero entries) **non-hermitian** **complex **(but **symmetric**!) 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.

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.

OS : CentOS Linux release 7.7.1908 (Core).

Compiler : mpicc (ICC) 18.0.3 20180410

Questions :

- Which package/library/function should I use ? I thought I could use
*zfeast_hcsrev*from FEAST, but from what the documentation says, it seems like it's restricted to hermitian matrices (the h in hcsr stands for hermitian). - 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 ?
- Is there an easy way to import my matrix which is in Matrix Market format (.mtx) to pass it to that function ?
- Is there any particular compiler options I should use ?

(I'm a graduate student in physics so computer science isn't my specialty)

Thanks,

Gabriel

2 Replies

Highlighted
##

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

02-25-2020
09:51 PM

11 Views

Yes, these routines ( zfeast_hcsrev) are restricted to hermitian matrixes.

There are some default parameters, which you could check from here - https://software.intel.com/en-us/mkl-developer-reference-c-extended-eigensolver-input-parameters. ;

You could try to convert mtx format to csr by using mkl_zcsrcoo() routines.

You don't need to use some specific compiler options.

Highlighted
##

Kirill_V_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

02-27-2020
09:14 AM

11 Views

Hello Gabriel,

In general, when there is a need for solving a **full **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.

What kind of application do you have which needs full solution to an eigenproblem?

Best,

Kirill

For more complete information about compiler optimizations, see our Optimization Notice.