I've been using scipy.sparse.linalg.eigs on some large matrices, and not surprisingly, it takes a while. So, I've been looking for ways to speed it up. My understand is that, under the hood, the scipy code use ARPACK, and there is a parallel version of ARPACK which uses MPI. Is it possible to have scipy use the parallel version of ARPACK without too much pain? If so, how?
(I should note that MATLAB's equivalent of eigs does seem to be multithreaded, so that may be the least painful option.)