Optimization of large scale iterative eigensolvers