More effective eigh values collection by using Gatherv.

Also avoid too large object pickle error.
Rewrite collect_m_array.

Also uncomment collect_svd_spectrum.