title: Which is the fastest Eigenvalue solver in the Spectra library for a huge sparse symmetric matrix?
body: <p>I wish to solve the eigenvalues for a large sparse symmetric matrix (typically of the order of 20,000 - 60,000). I have tried leveraging the SymEigsShiftSolver/SymEigsSolver but it takes considerable amount of time to produce my eigenvalues. Is there a way for a speedup?? I have attached a demo code of what I am aiming to do. Am I missing something?? </p>
  
  <p>int main()
  {</p>
  
  <pre><code>Eigen::MatrixXd A = Eigen::MatrixXd::Random(10000, 10000);
  Eigen::MatrixXd M = A.transpose() * A;
  
  // Matrix operation objects
  DenseGenMatProd&lt;double&gt; op_largest(M);
  DenseSymShiftSolve&lt;double&gt; op_smallest(M);
  
  // Construct solver object, requesting the smallest 10 eigenvalues
  SymEigsShiftSolver&lt; double, LARGEST_MAGN, DenseSymShiftSolve&lt;double&gt; &gt;
      eigs_smallest(&amp;op_smallest, 10, 30, 0.0);
  
  eigs_smallest.init();
  eigs_smallest.compute();
  std::cout &lt;&lt; "Smallest 10 Eigenvalues :\n" &lt;&lt;
      eigs_smallest.eigenvalues() &lt;&lt; std::endl;
  
  return 0;
  </code></pre>
  
  <p>}</p>