:orphan: # PCREDUNDANT Runs a `KSP` solver with preconditioner for the entire problem on subgroups of processors ## Options Database Key - ***-pc_redundant_number -*** number of redundant solves, for example if you are using 64 MPI processes and use an n of 4 there will be 4 parallel solves each on 16 = 64/4 processes. ## Notes Options for the redundant preconditioners can be set using the options database prefix -redundant_ The default `KSP` is preonly and the default `PC` is `PCLU` or `PCCHOLESKY` if Pmat is of type `MATSBAIJ`. `PCFactorSetShiftType()` applied to this `PC` will convey they shift type into the inner `PC` if it is factorization based. ## Developer Note `PCSetInitialGuessNonzero()` is not used by this class but likely should be. ## See Also `PCCreate()`, `PCSetType()`, `PCType`, `PCRedundantSetScatter()`, `PCRedundantGetKSP()`, `PCRedundantGetOperators()`, `PCRedundantSetNumber()`, `PCREDISTRIBUTE` ## Level intermediate ## Location src/ksp/pc/impls/redundant/redundant.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/pc/impls/redundant/redundant.c) [Index of all PC routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)