[petsc-users] memory corruption when using harmonic extraction with SLEPc

Moritz Cygorek mcygorek at uottawa.ca
Thu Aug 2 15:32:21 CDT 2018


Hi,


I want to diagonalize a huge sparse matrix and I'm using the Kryov-Schur method with harmonic extraction (command line option -eps_harmonic ) implemented in SLEPc.


I manually distribute a sparse matrix across several CPUs and everything works fine when:

- I do _not_ use harmonic extraction

- I use harmonic extraction on only a single CPU


If I try do use harmonic extraction on multiple CPUs, I get a memory corruption.

I'm not quite sure where to look at, but somewhere in the output, I find:



[1]PETSC ERROR: PetscMallocValidate: error detected at PetscSignalHandlerDefault() line 145 in /home/applications/sources/libraries/petsc-3.9.3/src/sys/error/signal.c
[1]PETSC ERROR: Memory [id=0(9072)] at address 0x145bcd0 is corrupted (probably write past end of array)
[1]PETSC ERROR: Memory originally allocated in DSAllocateWork_Private() line 74 in /home/applications/sources/libraries/slepc-3.9.2/src/sys/classes/ds/interface/dspriv.c



Now, I have the feeling that this might be a bug in SLEPc because, if I had messed up the matrix initialization and distribution, I should also get a memory corruption when I don't use harmonic extraction, right?

Any suggestions what might be going on?


Regards,

Moritz






-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20180802/56895dee/attachment.html>


More information about the petsc-users mailing list