I recently did a conceptual experiment to estimate the computational
time required to solve an exact expression in contrast to an approximate
solution (Helmholtz vs. Helmholtz-Kirchhoff integrals). The exact
solution requires a matrix inversion, and in my case the matrix would
contain ~15000 rows.
On my machine MATLAB seems to perform this matrix inversion with random
matrices about 9x faster (20 sec vs 3 mins). I thought the performance
would be roughly the same because I presume both rely on the same LAPACK
solvers.
I will not actually need to solve this problem (even at 20 sec it is
prohibitive for broadband simulation), but if I needed to I would
reluctantly choose MATLAB . I am simply wondering why there is this
performance gap, and if there is a better way to solve this problem in
numpy?
Thank you,
Ned
#Python version
import numpy as np
testA = np.random.randn(15000, 15000)
testb = np.random.randn(15000)
%time testx = np.linalg.solve(testA, testb)
%MATLAB version
testA = randn(15000);
testb = randn(15000, 1);
tic(); testx = testA \ testb; toc();
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
https://mail.scipy.org/mailman/listinfo/numpy-discussion