You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here is my source code in C++ to call MUMPS attached in the text file (can be easily modified to C language by replacing "static_cast" by "(type)"). main_cpp.txt
When applying out-of-core (or OOC) mode by setting id.ICNTL(22)=1, the solver writes NaNs into the solution vector in the solve phase (id.job=3). In-core (or IC) mode works fine, lets say on matrix cfd2 from SuiteSparse collection it computes solution with 1e-13 relative residual. The residual after factorization phase (id.job = 2) is same in IC mode and OOC mode, that is why I think the problem may be in solve phase (matrix factorization may be wrong too though, I have not looked on internal matrix factors yet). Exactly the same main function code (with slightly different #include headers) works fine in OOC mode with MPI-free MUMPS compiled from this repo https://github.com/scivision/mumps with cmake, ninja and Intel LLVM C++ and Fortran compilers (Intel MKL BLAS/LAPACK used as well).
I use static library libmumps-dto.dll.a with about 7 necessary dlls, though I tried copying all the dlls from mingw64/bin into executable file directory and things did not change. Small examples with matrix size=2 or 10 works fine with id.ICNTL(22)=1, but I don't think OOC features are really used there. Can someone please try to use OOC mode with mingw-w64-x86_64-mumps and matrix size big enough (e. g. n=45000 at least)? I also provide a SuiteSparse collection file reader that converts symmetric real matrices into CSR format used in my call-mumps code: SuiteSparseHB_to_CSR_sym_cpp.txt
Expected behavior
Expected behaviour: mingw-w64-x86_64-mumps should compute solution with relative residual about 1e-13 for cfd2 matrix from SuiteSparse collection (it fails on other test cases as well except small matrices n=2 and n=10 I tested).
Actual behavior
mingw-w64-x86_64-mumps writes NaNs into the solution vector on solve phase.
I saw that no files are written to the temporary out-of-core directory when using mingw-mumps and when using intel-compiled-mumps they are written.
So it may be related with different file path slashes syntax in Unix and Windows.
Description / Steps to reproduce the issue
Here is my source code in C++ to call MUMPS attached in the text file (can be easily modified to C language by replacing "static_cast" by "(type)").
main_cpp.txt
When applying out-of-core (or OOC) mode by setting id.ICNTL(22)=1, the solver writes NaNs into the solution vector in the solve phase (id.job=3). In-core (or IC) mode works fine, lets say on matrix cfd2 from SuiteSparse collection it computes solution with 1e-13 relative residual. The residual after factorization phase (id.job = 2) is same in IC mode and OOC mode, that is why I think the problem may be in solve phase (matrix factorization may be wrong too though, I have not looked on internal matrix factors yet). Exactly the same main function code (with slightly different #include headers) works fine in OOC mode with MPI-free MUMPS compiled from this repo https://github.com/scivision/mumps with cmake, ninja and Intel LLVM C++ and Fortran compilers (Intel MKL BLAS/LAPACK used as well).
I use static library libmumps-dto.dll.a with about 7 necessary dlls, though I tried copying all the dlls from mingw64/bin into executable file directory and things did not change. Small examples with matrix size=2 or 10 works fine with id.ICNTL(22)=1, but I don't think OOC features are really used there. Can someone please try to use OOC mode with mingw-w64-x86_64-mumps and matrix size big enough (e. g. n=45000 at least)? I also provide a SuiteSparse collection file reader that converts symmetric real matrices into CSR format used in my call-mumps code:
SuiteSparseHB_to_CSR_sym_cpp.txt
Expected behavior
Expected behaviour: mingw-w64-x86_64-mumps should compute solution with relative residual about 1e-13 for cfd2 matrix from SuiteSparse collection (it fails on other test cases as well except small matrices n=2 and n=10 I tested).
Actual behavior
mingw-w64-x86_64-mumps writes NaNs into the solution vector on solve phase.
Verification
Windows Version
Windows 10 Pro 22H2
MINGW environments affected
Are you willing to submit a PR?
No response
The text was updated successfully, but these errors were encountered: