This forum has been archived. All content is frozen. Please use KDE Discuss instead.

JacobiSVD and MKL

Tags: None
(comma "," separated)
ranius
Registered Member
Posts
6
Karma
0

JacobiSVD and MKL

Tue Dec 02, 2014 10:49 am
Hi,

I am working with the SVD of dense matrixes and I was comparing the performance of this operation using the eigen module itself and linked with the MKL. Usually, my matrix contains quite unitary numbers expect for some entries that are quite large (up to 1e9).
The evaluation of the singular values using the eigen module itself determines any zero values, using the MKL module some of them are zero leading to some big troubles in my subsequent code.
I was wondering if I can modify the threshold value, but reading the documentation it seems that it does not affect the results of the decomposition. Is it right?

Did anyone experience something like that? Any suggestion to overcome the problem?

Thanks in advanced

Ranius
User avatar
ggael
Moderator
Posts
3447
Karma
19
OS

Re: JacobiSVD and MKL

Tue Dec 02, 2014 1:27 pm
Your question is not very clear. Which version is working? Do you have a self-contained example, or at least a matrix example?
ranius
Registered Member
Posts
6
Karma
0

Re: JacobiSVD and MKL

Wed Dec 03, 2014 11:35 am
Hi,

It is very hard for me to provide a self-contained examples. I'm working with Eigen 3.2.2 and MKL 2013 update 4
In brief, the previous code evaluate the matrix below which has to be decomposed using SVD to get the singular values.

Code: Select all
       1              0              0            -7.049e-17              6.011e-05        0         0      6.6468e-06
   0.026        0.9561    -0.5281       0.01144              4801956387            0        0      1.7556611e-05
  0.0095       0.0094    0.0041         0.006                 6703274178            0         0      2.3415211e-05
  -0.02678    0.254      1.41975     0.996129           -8163245558             0        0       4.30032e-05
           0           0               0                0                           1                        0        0       -8.843698e-20
           0           0               0                0                           0                        1        0               0
           0           0               0                0                           0                        0        1               0
           0           0               0                0                           0                        0         0              1



Using the native Eigen JacobiSVD method the whole set of singular values are non-zero, using the MKL method included in the Eigen one of them is zero.

JacobiSVD:
Code: Select all
11603071112    1.22263     1.00054    1   1   1    0.8747856  1.4107093e-19


MKL
Code: Select all
11603070624  1.222  1.000        1           1    1   0.8747    0
User avatar
ggael
Moderator
Posts
3447
Karma
19
OS

Re: JacobiSVD and MKL

Wed Dec 03, 2014 9:38 pm
And what is the problem?? In both cases '0' or '1.41e-19' have to ignored because the later is much much smaller than the largest singular value. Your matrix is clearly not full rank.


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]