trilinos / Trilinos

Primary repository for the Trilinos Project
https://trilinos.org/
Other
1.19k stars 565 forks source link

Amesos: mumps solver gives segfault during SymbolicFactorization() #12647

Open swiesheier opened 8 months ago

swiesheier commented 8 months ago

When solving a small linear system (~8000 degrees of freedom), I produce the following stack trace

mumps

dmumps_c(&(MDS)); is referred to as "initialization of MUMPS" . That said, I am not sure whether my observation is a bug or not. I can factorize my matrix using Superlu_Dist or any serial package such as UMFPACK. Interestingly, even smaller problems (~1000 degrees of freedom) can be factorized with MUMPS.

Any ideas?

cgcgcg commented 8 months ago

@trilinos/amesos

cgcgcg commented 8 months ago

@swiesheier Could you double check that the matrix is not singular?

EDIT NVM, the issue seems to be in some ordering call using metis.

swiesheier commented 8 months ago

@cgcgcg So likely a bug in metis/gmsh ?

Anything I can do to narrow down the problem? The gmsh library does not provide debug information I think.

Strange is that it works for small problems (~1,000 degrees of freedom).

cgcgcg commented 8 months ago

You could try to reproduce the bug with MUMPS directly to be sure.

swiesheier commented 8 months ago

What do you mean? Making the call dmumps_c(...) directly without using trilinos?

cgcgcg commented 8 months ago

Right. But let's see if someone from the @trilinos/amesos team has more insight.

cgcgcg commented 8 months ago

@ndellingwood @iyamazaki Do you have any idea what could be happening here?

iyamazaki commented 8 months ago

I agree with @cgcgcg. The issue may not be the Amesos MUMPS interface, but may be with your MUMPS to METIS interfacing. It may be good to run MUMPS' example/test with the same matrix.

swiesheier commented 8 months ago

@iyamazaki

MUMPS' example/test

Can you point me to that folder? They have no github repo if I am not mistaken.

iyamazaki commented 8 months ago

Under MUMPS, I see a directory called examples, @swiesheier .

swiesheier commented 8 months ago

I can only access the include directory on my installation. On their website, I also see no source code. Can you give me a link, @iyamazaki

iyamazaki commented 8 months ago

Under my MUMPS directory, I have:

$ ls MUMPS_5.3.3
ChangeLog  CREDITS  doc  examples  include  INSTALL  lib  libseq  LICENSE  Makefile  Makefile.inc  Make.inc  MATLAB  PORD  README  SCILAB  src  VERSION
ndellingwood commented 8 months ago

@ndellingwood @iyamazaki Do you have any idea what could be happening here?

I don't have any direct experience using MUMPS, thanks for the suggestions @iyamazaki !