On 2020-05-27 22:00, Junchao Zhang wrote:
On Wed, May 27, 2020 at 12:09 AM Drew Parsons <dpars...@debian.org>
wrote:

On 2020-05-24 10:01, Drew Parsons wrote:
On 2020-05-23 23:45, Satish Balay wrote:

One more issue: Most externalpackages don't support
64bit-indices.
...
We haven't tried using MUMPS in this mode with PETSc

This will be the interesting test. I'll start with the 64-bit
build of
MUMPS and see how tests hold up.

The PETSc mumps tests seem to be robust with respect to 64 bit.
(64 bit MUMPS in the form of -DPORD_INTSIZE64, not all-integer
-DINTSIZE64)

That is, 32 bit PETSc passes its tests with 64 bit (PORD) MUMPS
and 64 bit PETSc passes its tests with 32 bit MUMPS.

The test in question that's passing is src/snes/tutorials/ex19, run
with
'make runex19_fieldsplit_mumps'
Perhaps it's not stress-testing 64 bit conditions.

Could you provide more details, e.g., the error stack trace?



Hi Junchao, PETSc's mumps test runs fine, there is no error to trace as such, just a diff with the reference output.

With 32-bit PETSc and 64-bit [PORD] MUMPS,

$ mpirun -n 2 ./ex19 -pc_type fieldsplit -pc_fieldsplit_block_size 4 -pc_fieldsplit_type SCHUR -pc_fieldsplit_0_fields 0,1,2 -pc_fieldsplit_1_fields 3 -fieldsplit_0_pc_type lu -fieldsplit_1_pc_type lu -snes_monitor_short -ksp_monitor_short -fieldsplit_0_pc_factor_mat_solver_type mumps -fieldsplit_1_pc_factor_mat_solver_type mumps

returns the result:

lid velocity = 0.0625, prandtl # = 1., grashof # = 1.
  0 SNES Function norm 0.239155
    0 KSP Residual norm 0.235858
    1 KSP Residual norm < 1.e-11
  1 SNES Function norm 6.81968e-05
    0 KSP Residual norm 2.30906e-05
    1 KSP Residual norm < 1.e-11
  2 SNES Function norm < 1.e-11
Number of SNES iterations = 2


where output/ex19_fieldsplit_5.out has

lid velocity = 0.0625, prandtl # = 1., grashof # = 1.
  0 SNES Function norm 0.239155
    0 KSP Residual norm 0.239155
    1 KSP Residual norm < 1.e-11
  1 SNES Function norm 6.81968e-05
    0 KSP Residual norm 6.81968e-05
    1 KSP Residual norm < 1.e-11
  2 SNES Function norm < 1.e-11
Number of SNES iterations = 2


So the diff in this case is

$make runex19_fieldsplit_mumps
3c3
<     0 KSP Residual norm 0.239155
---
    0 KSP Residual norm 0.235858
6c6
<     0 KSP Residual norm 6.81968e-05
---
    0 KSP Residual norm 2.30906e-05

Reply via email to