[petsc-users] FETI-DP implementation and call sequence
Satish Balay
balay at mcs.anl.gov
Fri Sep 5 19:39:15 CDT 2014
Ok - looks like this error check in
ISLocalToGlobalMappingRestoreBlockInfo() was added a couple of days
back.
>>>
https://bitbucket.org/petsc/petsc/commits/cbc1caf078fb2bf42b82e0b5ac811b1101900405
PetscValidHeaderSpecific(mapping,IS_LTOGM_CLASSID,1);
<<<
This is breaking PCISDestroy() - which is attempting to pass in a null for 'mapping'
>>>>>>
if (pcis->ISLocalToGlobalMappingGetInfoWasCalled) {
ierr = ISLocalToGlobalMappingRestoreInfo((ISLocalToGlobalMapping)0,&(pcis->n_neigh),&(pcis->neigh),&(pcis->n_shared),&(pcis->shared));CHKERRQ(ierr);
}
<<<<<<
Commenting out the error check gets the code working.
Satish
On Fri, 5 Sep 2014, Satish Balay wrote:
> On Wed, 3 Sep 2014, Stefano Zampini wrote:
>
> > FETIDP is in PETSc as a byproduct of the BDDC preconditioner (one is the dual of the other) and it does not have its own classes so far.
> >
> > That said, you can experiment with FETI-DP only after having setup a BDDC preconditioner with the options and customization you prefer.
> > Use http://www.mcs.anl.gov/petsc/petsc-dev/docs/manualpages/KSP/index.html for manual pages.
> >
> > For an 'how to' with FETIDP, please see src/ksp/ksp/examples/tutorials/ex.59.c as Jed told you, specifically look at ComputeKSPFETIDP for obtaining the FETIDP matrix F (implemented Matrix-free) and the optimal FETIDP dirichlet preconditioner. Once you have F, you can use PCBDDCMatFETIDPGetRHS and PCBDDCMatFetiDPGetSolution to obtain a right-hand side for the FETIDP system and a physical solution from the solution of the FETIDP system.
> >
> > I would recommend you to use the development version of the library and either use the ‘next’ branch or the ‘master' branch after having merged in the branch stefano_zampini/pcbddc-primalfixes. Note that ‘next’ also contains the new deluxe scaling operator for BDDC which is not available to use with FETI-DP.
> >
> > If you have any other questions which can be useful for other PETSc users, please use the mailing list; otherwise you can contact me personally.
> >
> > Stefano
>
> Hm - this example is crashing for me.. [both with next and master+stefano_zampini/pcbddc-primalfixes]
>
> Needs some debugging..
>
> Satish
>
> >>>>>>>>>>>
> balay at asterix /home/balay/petsc/src/ksp/ksp/examples/tutorials (test)
> $ make runex59
> 12a13,96
> > [1]PETSC ERROR: [2]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------
> > [2]PETSC ERROR: Null argument, when expecting valid pointer
> > [2]PETSC ERROR: Null Object: Parameter # 1
> > [2]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
> > [2]PETSC ERROR: Petsc Development GIT revision: v3.5.1-212-g160c54e GIT Date: 2014-09-05 18:38:50 -0500
> > [2]PETSC ERROR: [3]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------
> > [3]PETSC ERROR: Null argument, when expecting valid pointer
> > [3]PETSC ERROR: Null Object: Parameter # 1
> > [3]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
> > [3]PETSC ERROR: Petsc Development GIT revision: v3.5.1-212-g160c54e GIT Date: 2014-09-05 18:38:50 -0500
> > [3]PETSC ERROR: ./ex59 on a arch-pcbddc named asterix.mcs.anl.gov by balay Fri Sep 5 19:04:27 2014
> > [3]PETSC ERROR: Configure options --with-pcbddc=1 PETSC_ARCH=arch-pcbddc
> > ./ex59 on a arch-pcbddc named asterix.mcs.anl.gov by balay Fri Sep 5 19:04:27 2014
> > [2]PETSC ERROR: Configure options --with-pcbddc=1 PETSC_ARCH=arch-pcbddc
> > [2]PETSC ERROR: #1 ISLocalToGlobalMappingRestoreBlockInfo() line 1146 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [3]PETSC ERROR: #1 ISLocalToGlobalMappingRestoreBlockInfo() line 1146 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [3]PETSC ERROR: [2]PETSC ERROR: #2 ISLocalToGlobalMappingRestoreInfo() line 1245 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [2]PETSC ERROR: #2 ISLocalToGlobalMappingRestoreInfo() line 1245 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [3]PETSC ERROR: #3 PCISDestroy() line 381 in /home/balay/petsc/src/ksp/pc/impls/is/pcis.c
> > #3 PCISDestroy() line 381 in /home/balay/petsc/src/ksp/pc/impls/is/pcis.c
> > [2]PETSC ERROR: [3]PETSC ERROR: #4 PCDestroy_BDDC() line 1373 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddc.c
> > #4 PCDestroy_BDDC() line 1373 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddc.c
> > [2]PETSC ERROR: #5 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > [3]PETSC ERROR: #5 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > [2]PETSC ERROR: #6 PCBDDCDestroyFETIDPPC() line 77 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddcfetidp.c
> > [3]PETSC ERROR: #6 PCBDDCDestroyFETIDPPC() line 77 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddcfetidp.c
> > [3]PETSC ERROR: [2]PETSC ERROR: #7 PCDestroy_Shell() line 194 in /home/balay/petsc/src/ksp/pc/impls/shell/shellpc.c
> > [2]PETSC ERROR: #7 PCDestroy_Shell() line 194 in /home/balay/petsc/src/ksp/pc/impls/shell/shellpc.c
> > [3]PETSC ERROR: #8 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > #8 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > [2]PETSC ERROR: #9 KSPDestroy() line 808 in /home/balay/petsc/src/ksp/ksp/interface/itfunc.c
> > [3]PETSC ERROR: #9 KSPDestroy() line 808 in /home/balay/petsc/src/ksp/ksp/interface/itfunc.c
> > [2]PETSC ERROR: #10 main() line 1088 in /home/balay/petsc/src/ksp/ksp/examples/tutorials/ex59.c
> > [3]PETSC ERROR: #10 main() line 1088 in /home/balay/petsc/src/ksp/ksp/examples/tutorials/ex59.c
> > [3]PETSC ERROR: [2]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-maint at mcs.anl.gov----------
> > ----------------End of Error Message -------send entire error message to petsc-maint at mcs.anl.gov----------
> > application called MPI_Abort(MPI_COMM_WORLD, 85) - process 2
> > application called MPI_Abort(MPI_COMM_WORLD, 85) - process 3
> > --------------------- Error Message --------------------------------------------------------------
> > [1]PETSC ERROR: Null argument, when expecting valid pointer
> > [1]PETSC ERROR: Null Object: Parameter # 1
> > [1]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
> > [1]PETSC ERROR: Petsc Development GIT revision: v3.5.1-212-g160c54e GIT Date: 2014-09-05 18:38:50 -0500
> > [1]PETSC ERROR: ./ex59 on a arch-pcbddc named asterix.mcs.anl.gov by balay Fri Sep 5 19:04:27 2014
> > [1]PETSC ERROR: Configure options --with-pcbddc=1 PETSC_ARCH=arch-pcbddc
> > [1]PETSC ERROR: #1 ISLocalToGlobalMappingRestoreBlockInfo() line 1146 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [1]PETSC ERROR: #2 ISLocalToGlobalMappingRestoreInfo() line 1245 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [1]PETSC ERROR: #3 PCISDestroy() line 381 in /home/balay/petsc/src/ksp/pc/impls/is/pcis.c
> > [1]PETSC ERROR: #4 PCDestroy_BDDC() line 1373 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddc.c
> > [1]PETSC ERROR: #5 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > [1]PETSC ERROR: #6 PCBDDCDestroyFETIDPPC() line 77 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddcfetidp.c
> > [1]PETSC ERROR: #7 PCDestroy_Shell() line 194 in /home/balay/petsc/src/ksp/pc/impls/shell/shellpc.c
> > [1]PETSC ERROR: #8 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > [1]PETSC ERROR: #9 KSPDestroy() line 808 in /home/balay/petsc/src/ksp/ksp/interface/itfunc.c
> > [1]PETSC ERROR: #10 main() line 1088 in /home/balay/petsc/src/ksp/ksp/examples/tutorials/ex59.c
> > [1]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-maint at mcs.anl.gov----------
> > application called MPI_Abort(MPI_COMM_WORLD, 85) - process 1
> > [0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------
> > [0]PETSC ERROR: Null argument, when expecting valid pointer
> > [0]PETSC ERROR: Null Object: Parameter # 1
> > [0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
> > [0]PETSC ERROR: Petsc Development GIT revision: v3.5.1-212-g160c54e GIT Date: 2014-09-05 18:38:50 -0500
> > [0]PETSC ERROR: ./ex59 on a arch-pcbddc named asterix.mcs.anl.gov by balay Fri Sep 5 19:04:27 2014
> > [0]PETSC ERROR: Configure options --with-pcbddc=1 PETSC_ARCH=arch-pcbddc
> > [0]PETSC ERROR: #1 ISLocalToGlobalMappingRestoreBlockInfo() line 1146 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [0]PETSC ERROR: #2 ISLocalToGlobalMappingRestoreInfo() line 1245 in /home/balay/petsc/src/vec/is/utils/isltog.c
> > [0]PETSC ERROR: #3 PCISDestroy() line 381 in /home/balay/petsc/src/ksp/pc/impls/is/pcis.c
> > [0]PETSC ERROR: #4 PCDestroy_BDDC() line 1373 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddc.c
> > [0]PETSC ERROR: #5 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > [0]PETSC ERROR: #6 PCBDDCDestroyFETIDPPC() line 77 in /home/balay/petsc/src/ksp/pc/impls/bddc/bddcfetidp.c
> > [0]PETSC ERROR: #7 PCDestroy_Shell() line 194 in /home/balay/petsc/src/ksp/pc/impls/shell/shellpc.c
> > [0]PETSC ERROR: #8 PCDestroy() line 121 in /home/balay/petsc/src/ksp/pc/interface/precon.c
> > [0]PETSC ERROR: #9 KSPDestroy() line 808 in /home/balay/petsc/src/ksp/ksp/interface/itfunc.c
> > [0]PETSC ERROR: #10 main() line 1088 in /home/balay/petsc/src/ksp/ksp/examples/tutorials/ex59.c
> > [0]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-maint at mcs.anl.gov----------
> > application called MPI_Abort(MPI_COMM_WORLD, 85) - process 0
> >
> > ===================================================================================
> > = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> > = PID 14663 RUNNING AT asterix.mcs.anl.gov
> > = EXIT CODE: 85
> > = CLEANING UP REMAINING PROCESSES
> > = YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
> > ===================================================================================
> /home/balay/petsc/src/ksp/ksp/examples/tutorials
> Possible problem with ex59, diffs above
> =========================================
> balay at asterix /home/balay/petsc/src/ksp/ksp/examples/tutorials (test)
> $
More information about the petsc-users
mailing list