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

Extended eigensolver (FEAST) segfaults

Harshad_S_
Beginner
453 Views

Hi,

I'm calling the FEAST eigensolver using matrices assembled by PETSc (sparse CSR) and it segfaults when running PARDISO. Here is the stack:

#8  <signal handler called>
#9  0x00002b0221661836 in mkl_pds_metis_pqueueupdateup () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#10 0x00002b0221666d99 in mkl_pds_metis_fm_2waynodebalance () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#11 0x00002b0221666e10 in mkl_pds_metis_refine2waynode () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#12 0x00002b022165ad3a in mkl_pds_metis_mlevelnodebisectionmultiple () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#13 0x00002b02200d7d30 in mkl_pds_metis_mlevelnesteddissection_pardiso () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_intel_thread.so
#14 0x00002b022165bd2b in mkl_pds_metis_nodend_pardiso () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#15 0x00002b02216fdf0b in mkl_pds_reorder1_pardiso () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#16 0x00002b02216df2ef in mkl_pds_do_all_pardiso_fc () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#17 0x00002b0221619f0a in mkl_pds_pardiso_c () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#18 0x00002b02216f860d in mkl_pds_pardiso () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#19 0x00002b02219c0479 in mkl_feast_dfeast_scsrgv () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_core.so
#20 0x00002b021f51a792 in dfeast_scsrgv_ () from /apps/rhel6/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_intel_lp64.so

Can you please point out what could be the problem in my code?

Thanks,

Harshad

0 Kudos
5 Replies
Gennady_F_Intel
Moderator
453 Views

Hi, can you give us the reproducer of this problem?

0 Kudos
Harshad_S_
Beginner
453 Views

Hi Gennady,

I have attached an example which reproduces the error. You need to have a PETSc (real) build installed. In the Makefile, set the PETSC_DIR variable to the base PETSc directory. "make all" should build the code. Then you can run it as follows:

./petsc_feast_example -on_error_attach_debugger

This will attach a debugger to the process when it fails in mkl_pds_metis_pqueueupdateup(). Please let me know if you need more information.

Thanks,
Harshad

 

0 Kudos
Harshad_S_
Beginner
453 Views

Hi Gennady,

Any idea what could be wrong in my code? I tried to make the code work today, but I can't get around this segfault.

Thanks,
Harshad

0 Kudos
Gennady_F_Intel
Moderator
453 Views

I didn't check the test - I don't have PETS is required by your case.

0 Kudos
Harshad_S_
Beginner
453 Views

I found the problem. I was using 0 based indexing because my program was written in C. FEAST is in Fortran and needs 1 based indexing.

0 Kudos
Reply