DSSetParallel#
Selects the mode of operation in parallel runs.
Synopsis#
#include "slepcds.h"
PetscErrorCode DSSetParallel(DS ds,DSParallelType pmode)
Logically Collective
Input Parameters#
ds - the direct solver context
pmode - the parallel mode
Options Database Key#
-ds_parallel
- Sets the parallel mode,redundant,synchronizedordistributed
Notes#
In the redundant parallel mode, all processes will make the computation
redundantly, starting from the same data, and producing the same result.
This result may be slightly different in the different processes if using a
multithreaded BLAS library, which may cause issues in ill-conditioned problems.
In the synchronized parallel mode, only the first MPI process performs the
computation and then the computed quantities are broadcast to the other
processes in the communicator. This communication is not done automatically,
an explicit call to DSSynchronize() is required.
The distributed parallel mode can be used in some DS types only, such
as the contour integral method of DSNEP. In this case, every MPI process
will be in charge of part of the computation.
See Also#
DS: Direct Solver (or Dense System), DSSynchronize(), DSGetParallel()
Level#
advanced
Location#
src/sys/classes/ds/interface/dsbasic.c
Index of all DS routines Table of Contents for all manual pages Index of all manual pages