[Lapack] [bug report] dsyevr does not seem to be thread-safe
From: Daniel Strobusch
Date: Sun, 18 Aug 2013 12:34:39 +0200
Dear LAPACK Team,
according to my testing LAPACKs dsyevr does not seem to be thread-safe. This is
in contrast to the statement "all routines in LAPACK-3.3 are now thread-safe."
In multi-threaded application the routine produces (arbitrarily wrong
eigenvectors, although eigenvalues are ok).
I tried to discuss the problem on http://stackoverflow.comhttp://stackoverflow.com/q/18216314/1458343
where also a full example program is given, which demonstrates the issue. As
I'm not a Fortran programmer I can only provide an example in C. It was tested
to call the routine dsyevr via the LAPACKE interface and also directly. After
the test failed with optimized OpenBLAS, the netlib reference LAPACK/BLAS was
used to confirm the misbehavior of the program. The tests were run on two
I assume there is still a bug in LAPACK concerning thread-safety. I would
appreciate if you could confirm the bug and of course correct it in further
versions. Contributions to the stackoverflow discussion are also welcome.
With best regards