Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
7002 Discussions

FEAST Eigensolver: Problem setting the size of m0 and x parameters

New Contributor I

I have been using the FEAST eigensolver for a long time and one problem I have always had is knowing how big to make m0 and x. I know emin and emax but I have no idea how many eigenvalues fall in-between those bounds. The problem is that my a and b matrices are huge and I have to guess the size of m0 and x, which means that I often chew up lots of memory unnecessarily if there are less eigenvalues than my guess.

Is there a way to do some sort of preliminary call to find out how many eigenvalues are between emin and emax (or even a close estimate) before I have to allocate memory for the x array so that I can then set m0 and allocate x with realistic values?

0 Kudos
2 Replies

Peter, I think this is one of the main disadvantages of this algorithm. Probably I am wrong, but that impossible with the FEAST. We may ask someone from the Feast developers to help you in that possible. 

0 Kudos


as this option is not yet implemented in MKL, but you may try to take the EigenValues Slicing Library. EVSL provides routines for computing eigenvalues located in a given interval, and their associated eigenvectors, of real symmetric - standard or generalized eigenvalue problems. 

here is the link to this library --

and here is the link to Eric's Polizzy publication regarding this topic -


0 Kudos