Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

Bug in MKL 10.2.2.025

dbacchus
Beginner
519 Views

MKL version: 10.2.2.025
IFC version: 11.1.051
Platforms: linux x64, win7 x64

Problem: Solve large eigenproblem for the bottom few eigenstates
Matrix: real symmetric, sparse (2D finite differences of stationary state Schrodinger equation)
Method of solving: ARPACK or FEAST

ERROR: the returned eigenvectors (not eigenvalues) are wrong

1) The error is observedonly in MKL 10.2; when linked with MKL 10.1 (specifically 10.1.1.022), the code works fine.
2) The error is observed only in PARALLEL version of MKL and only when mkl_num_threads>1; when mkl_num_threads=1 or when the code is linked with the sequential MKL version,the codeworks fine.
3) The error is platform independent (observed in both linux x64 and win 7 x64)
4) The error is observedwhile using two (completely different and independent apart from their partial reliance on MKL)eigenproblem solvers: ARPACK and FEAST. In ARPACK theerror can be further pinpointed to DSEUPD (returning wrong eigenvectors).I'm not familiar with FEAST well enough to track it down to a more specific routine, but it also returns wrong eigenvectors with MKL 10.2 (works just fine with 10.1)

Note (perhaps it will help you to find the bug faster): The error has a threshold for the number of eigenvalues. For example,when the total number of states is around 17,091 and the computed number of eigenstates (N_eig) is less than 106 both ARPACK and FEAST work just fine. With N_eig>105 the returned eigenvectors are wrong. I.e. for smaller problems even parallel MKL 10.2 works fine, while for larger problems it fails.

0 Kudos
5 Replies
Gennady_F_Intel
Moderator
519 Views
Quoting - dbacchus

MKL version: 10.2.2.025
IFC version: 11.1.051
Platforms: linux x64, win7 x64

Problem: Solve large eigenproblem for the bottom few eigenstates
Matrix: real symmetric, sparse (2D finite differences of stationary state Schrodinger equation)
Method of solving: ARPACK or FEAST

ERROR: the returned eigenvectors (not eigenvalues) are wrong

1) The error is observedonly in MKL 10.2; when linked with MKL 10.1 (specifically 10.1.1.022), the code works fine.
2) The error is observed only in PARALLEL version of MKL and only when mkl_num_threads>1; when mkl_num_threads=1 or when the code is linked with the sequential MKL version,the codeworks fine.
3) The error is platform independent (observed in both linux x64 and win 7 x64)
4) The error is observedwhile using two (completely different and independent apart from their partial reliance on MKL)eigenproblem solvers: ARPACK and FEAST. In ARPACK theerror can be further pinpointed to DSEUPD (returning wrong eigenvectors).I'm not familiar with FEAST well enough to track it down to a more specific routine, but it also returns wrong eigenvectors with MKL 10.2 (works just fine with 10.1)

Note (perhaps it will help you to find the bug faster): The error has a threshold for the number of eigenvalues. For example,when the total number of states is around 17,091 and the computed number of eigenstates (N_eig) is less than 106 both ARPACK and FEAST work just fine. With N_eig>105 the returned eigenvectors are wrong. I.e. for smaller problems even parallel MKL 10.2 works fine, while for larger problems it fails.


dbacchus,
based on the description you provided, this is a known problem and this issue has been already fixed.
The fix will available the nearest release. But, for checking the problem, can you please send us a reproducible test case?
--Gennady

0 Kudos
dbacchus
Beginner
519 Views

dbacchus,
based on the description you provided, this is a known problem and this issue has been already fixed.
The fix will available the nearest release. But, for checking the problem, can you please send us a reproducible test case?
--Gennady

A test case would involve usage of ARPACK or FEAST library, which aren't part of MKL, plus a construction of relatively large matrices (since as I mentioned there is a threshold below which it works fine).

Can you tell us when, approximately, the new release is going to be available?

Thanks.
0 Kudos
Gennady_F_Intel
Moderator
519 Views
Quoting - dbacchus
A test case would involve usage of ARPACK or FEAST library, which aren't part of MKL, plus a construction of relatively large matrices (since as I mentioned there is a threshold below which it works fine).

Can you tell us when, approximately, the new release is going to be available?

Thanks.
the expected timeframe is during one month. i will inform you via this tread and/or announce about that on the forum.
--Gennady
0 Kudos
Gennady_F_Intel
Moderator
519 Views
Quoting - dbacchus
A test case would involve usage of ARPACK or FEAST library, which aren't part of MKL, plus a construction of relatively large matrices (since as I mentioned there is a threshold below which it works fine).

Can you tell us when, approximately, the new release is going to be available?

Thanks.

Hello dbacchus,
Intel MKL 10.2 Update 3 is now available.
The problem discussed into this tread has been fixed into this update.
Please see the Intel MKL 10.2 Update 3 is now available announce. You can find there the link to the Intel registration center to download
Could you please let us know if the problem is still exists?
--Gennady

0 Kudos
dbacchus
Beginner
519 Views

Hello dbacchus,
Intel MKL 10.2 Update 3 is now available.
The problem discussed into this tread has been fixed into this update.
Please see the Intel MKL 10.2 Update 3 is now available announce. You can find there the link to the Intel registration center to download
Could you please let us know if the problem is still exists?
--Gennady


The problem is gonewith 10.2.3! Thanks very much!!

UPDATE: I checked both ARPACK and FEAST - and both return correct eigenvectors now.
0 Kudos
Reply