I am running the FEAST algorithm on Mathematica/10.0. I have sparse matrices of dimension around 500,000, looking for around 50 eigenvalues. I have noticed the runtime depends massively on what the entries are.
For instance, if I have two sparse matrices with precisely the same non-zero entries, I just modify them slightly, the runtime can slow down 5x or more. The specified intervals are the same and the results return very nearly the same number of eigenvalues.
Is this a known issue with FEAST?
I wrote some code to do dgels originally using LAPACKE. I also tried to use MKL to do the dgels. From my understanding, with the exact same code base but just recompile/relink with MKL library would just do the job. Or LD_PRELOAD=libmkl_rt.so can also work upon the test program built with LAPACKE. the programs run OK, but the final results are different.
Any one can tell me why?
Below is the the test program source code as well as the MakeFile lines.
I am using mkl_sparse_s_export_csr function for reading data in sparse_matrix_t object, but the return result is error while in other function. Here is the example: