Public bug reported: Octave gives wrong results when manipulating large matrices, when the package `intel-mkl` is installed, and BLAS, LAPACK are configured with `intel-mkl` (from default ubuntu repositories). With MKL, Octave seems to have a 2x speedup when diagonalize certain matrices, but the results are totally wrong (when the matrix is large, say 1000x1000).
Code: ``` for a = 1:500 for b = 1:500 c(a,b) = sin(a + b^2); endfor endfor g = eig(c); max(real(g)) ``` The correct result is `ans = 16.915` (I checked this before installing intel-mkl, and also in Ubuntu 18.04 in the same computer, where intel-mkl was not installed) With MKL in Ubuntu 20.04, I get random numbers of order 10^5 - 10^6, which change every time the code is run. lsb_release -rd Description: Ubuntu 20.04 LTS Release: 20.04 (It is Xubuntu 20.04) apt-cache policy octave octave: Installed: 5.2.0-1 Candidate: 5.2.0-1 Version table: *** 5.2.0-1 500 500 http://archive.ubuntu.com/ubuntu focal/universe amd64 Packages 100 /var/lib/dpkg/status apt-cache policy intel-mkl intel-mkl: Installed: 2020.0.166-1 Candidate: 2020.0.166-1 Version table: *** 2020.0.166-1 500 500 http://archive.ubuntu.com/ubuntu focal/multiverse amd64 Packages 100 /var/lib/dpkg/status ** Affects: octave (Ubuntu) Importance: Undecided Status: New ** Tags: focal ** Attachment added: "Code which gives wrong result with MKL" https://bugs.launchpad.net/bugs/1890984/+attachment/5400280/+files/testmkl.m -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1890984 Title: Octave gives wrong results when diagonalizing large matrices with MKL To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/octave/+bug/1890984/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs