Open shanlior opened 9 years ago
Generally, I've notice that torch.eig() only returns the eigenvalues and not the eigenvectors...
@jarmstrong2 have you tried to add the 'V' option? e.g. torch.eig(torch.rand(4,4), 'V')
thanks for the response, i think i found that out some time ago. :)
Hello, I've noticed that using MAGMA's
torch.eig
on a CUDA device leads to different results thatn using the torch.eig on CPU. I've implemented an algorithm using eigen decomposition, and while the GPU gave me good results, I got poor results on the CPU. There are not changes in the code, just using CPU instead of GPU. I tried to run a test case.While the eigen-values themselves are similar, I got different eigen-vectors on both calculations. I can suggest that the GPU has some errors due to numerical issues, but what's bothering me is that the GPU implementation got good results, and the CPU got no results. It is not very likely that it was done by chance (the algorithm's results were good over few examples), so it leads me to think that there is a problem with the eigenvectors on CPU. I also tried to calculate the test case above on MATLAB, and I got different results from, but more similar to those on CPU. That just made me more confused.
I'd like to have any comments on this matter,
Thanks a lot,
Lior