Public Member Functions | |
| AlephKernel (IParallelMng *, Integer, IAlephFactory *, Integer=0, Integer=0, bool=false) | |
| AlephKernel (ITraceMng *, ISubDomain *, IAlephFactory *, Integer=0, Integer=0, bool=false) | |
| AlephKernel (ISubDomain *, Integer alephUnderlyingSolver=0, Integer alephNumberOfCores=0) | |
| void | setup (void) |
| void | initialize (Integer, Integer) |
| void | break_and_return (void) |
| AlephVector * | createSolverVector (void) |
| AlephMatrix * | createSolverMatrix (void) |
| void | postSolver (AlephParams *, AlephMatrix *, AlephVector *, AlephVector *) |
| void | workSolver (void) |
| AlephVector * | syncSolver (Integer, Integer &, Real *) |
| IAlephFactory * | factory () |
| AlephTopology * | topology () |
| AlephOrdering * | ordering () |
| AlephIndexing * | indexing () |
| Integer | rank () |
| Integer | size () |
| ISubDomain * | subDomain () |
| bool | isParallel () |
| bool | isInitialized () |
| bool | thereIsOthers () |
| bool | isAnOther () |
| IParallelMng * | parallel () |
| IParallelMng * | world () |
| Integer | underlyingSolver () |
| bool | isCellOrdering () |
| Integer | index () |
| bool | configured () |
| void | mapranks (Array< Integer > &) |
| bool | hitranks (Integer, ArrayView< Integer >) |
| Integer | nbRanksPerSolver () |
| ArrayView< Integer > | solverRanks (Integer i) |
| IParallelMng * | subParallelMng (Integer i) |
| IAlephTopology * | getTopologyImplementation (Integer i) |
| AlephKernelSolverInitializeArguments & | solverInitializeArgs () |
| Public Member Functions inherited from Arcane::TraceAccessor | |
| TraceAccessor (ITraceMng *m) | |
| Constructs an accessor via the trace manager m. | |
| TraceAccessor (const TraceAccessor &rhs) | |
| Copy constructor. | |
| TraceAccessor & | operator= (const TraceAccessor &rhs) |
| Copy assignment operator. | |
| virtual | ~TraceAccessor () |
| Frees resources. | |
| ITraceMng * | traceMng () const |
| Trace manager. | |
| TraceMessage | info () const |
| Flow for an information message. | |
| TraceMessage | pinfo () const |
| Flow for a parallel information message. | |
| TraceMessage | info (char category) const |
| Flow for an information message of a given category. | |
| TraceMessage | pinfo (char category) const |
| Flow for a parallel information message of a given category. | |
| TraceMessage | info (bool v) const |
| Flow for an information message. | |
| TraceMessage | warning () const |
| Flow for a warning message. | |
| TraceMessage | pwarning () const |
| TraceMessage | error () const |
| Flow for an error message. | |
| TraceMessage | perror () const |
| TraceMessage | log () const |
| Flow for a log message. | |
| TraceMessage | plog () const |
| Flow for a log message. | |
| TraceMessage | logdate () const |
| Flow for a log message preceded by the date. | |
| TraceMessage | fatal () const |
| Flow for a fatal error message. | |
| TraceMessage | pfatal () const |
| Flow for a parallel fatal error message. | |
| TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
| Flow for a debug message. | |
| Trace::eDebugLevel | configDbgLevel () const |
| Debug level of the configuration file. | |
| TraceMessage | info (Int32 verbose_level) const |
| Flow for an information message of a given level. | |
| TraceMessage | linfo () const |
| Flow for an information message with the local information level of this instance. | |
| TraceMessage | linfo (Int32 relative_level) const |
| Flow for an information message with the local information level of this instance. | |
| void | fatalMessage (const StandaloneTraceMessage &o) const |
Static Public Attributes | |
| static constexpr int | SOLVER_HYPRE = 2 |
| static constexpr int | SOLVER_TRILINOS = 3 |
| static constexpr int | SOLVER_CUDA = 4 |
| static constexpr int | SOLVER_PETSC = 5 |
Private Member Functions | |
| Ref< IParallelMng > | _createUnderlyingParallelMng (Integer) |
Private Attributes | |
| ISubDomain * | m_sub_domain = nullptr |
| bool | m_isParallel |
| Integer | m_rank |
| Integer | m_size |
| Integer | m_world_size |
| bool | m_there_are_idles |
| bool | m_i_am_an_other |
| IParallelMng * | m_parallel |
| IParallelMng * | m_world_parallel |
| bool | m_configured = false |
| IAlephFactory * | m_factory = nullptr |
| AlephTopology * | m_topology = nullptr |
| AlephOrdering * | m_ordering = nullptr |
| AlephIndexing * | m_indexing = nullptr |
| Integer | m_aleph_vector_idx |
| const Integer | m_underlying_solver |
| const bool | m_reorder |
| Integer | m_solver_index |
| Integer | m_solver_size |
| bool | m_solved |
| bool | m_has_been_initialized |
| AlephKernelSolverInitializeArguments | m_solver_initialize_args |
| UniqueArray< SharedArray< Integer > > | m_solver_ranks |
| UniqueArray< Ref< IParallelMng > > | m_sub_parallel_mng_queue |
| UniqueArray< AlephMatrix * > | m_matrix_queue |
| UniqueArray< AlephKernelArguments * > | m_arguments_queue |
| UniqueArray< AlephKernelResults * > | m_results_queue |
Additional Inherited Members | |
| Protected Member Functions inherited from Arcane::TraceAccessor | |
| void | _setLocalVerboseLevel (Int32 v) |
| Int32 | _localVerboseLevel () const |
Definition at line 115 of file AlephKernel.h.
| Arcane::AlephKernel::AlephKernel | ( | IParallelMng * | wpm, |
| Integer | size, | ||
| IAlephFactory * | factory, | ||
| Integer | alephUnderlyingSolver = 0, | ||
| Integer | alephNumberOfCores = 0, | ||
| bool | alephOrdering = false ) |
AlephKernel used by Kappa where m_sub_domain is set to 'nullptr'.
Definition at line 36 of file AlephKernel.cc.
References setup(), Arcane::TraceAccessor::TraceAccessor(), and Arcane::TraceAccessor::traceMng().
Referenced by createSolverVector(), setup(), and syncSolver().
| Arcane::AlephKernel::AlephKernel | ( | ITraceMng * | tm, |
| ISubDomain * | sd, | ||
| IAlephFactory * | factory, | ||
| Integer | alephUnderlyingSolver = 0, | ||
| Integer | alephNumberOfCores = 0, | ||
| bool | alephOrdering = false ) |
Standard kernel whose factory is passed as an argument This corresponds to the old API still used in some Arcane tests and especially in the code
Definition at line 76 of file AlephKernel.cc.
References setup(), and Arcane::TraceAccessor::TraceAccessor().
| Arcane::AlephKernel::AlephKernel | ( | ISubDomain * | sd, |
| Integer | alephUnderlyingSolver = 0, | ||
| Integer | alephNumberOfCores = 0 ) |
Minimalist Aleph Kernel to use with indexing This kernel creates its own factory and must manage its initialization. It also has underlying_solver and number_of_cores options.
Definition at line 114 of file AlephKernel.cc.
References Arcane::TraceAccessor::debug(), setup(), Arcane::TraceAccessor::TraceAccessor(), and Arcane::TraceAccessor::traceMng().
| Arcane::AlephKernel::~AlephKernel | ( | void | ) |
Definition at line 194 of file AlephKernel.cc.
|
private |
Definition at line 304 of file AlephKernel.cc.
| void Arcane::AlephKernel::break_and_return | ( | void | ) |
Definition at line 256 of file AlephKernel.cc.
|
inline |
Definition at line 161 of file AlephKernel.h.
| AlephMatrix * Arcane::AlephKernel::createSolverMatrix | ( | void | ) |
Definition at line 323 of file AlephKernel.cc.
| AlephVector * Arcane::AlephKernel::createSolverVector | ( | void | ) |
WARNING: the 1st call returns the Bth RHS vector, the 2nd call returns the Xth solution vector. c4b28f2
Definition at line 401 of file AlephKernel.cc.
References AlephKernel(), Arcane::TraceAccessor::debug(), Arcane::ITraceMng::flush(), and Arcane::TraceAccessor::traceMng().
|
inline |
Definition at line 145 of file AlephKernel.h.
|
inline |
Definition at line 167 of file AlephKernel.h.
Definition at line 292 of file AlephKernel.cc.
|
inline |
Definition at line 160 of file AlephKernel.h.
|
inline |
Definition at line 148 of file AlephKernel.h.
Definition at line 230 of file AlephKernel.cc.
|
inline |
Definition at line 155 of file AlephKernel.h.
|
inline |
Definition at line 159 of file AlephKernel.h.
|
inline |
Definition at line 153 of file AlephKernel.h.
|
inline |
Definition at line 152 of file AlephKernel.h.
Mod[Floor[ Table[n, {n, mSolverIndex*mSize, (mSolverIndex + 1)*mSize - 1}]/(mSize/ mSolverSize)], mSize]
Definition at line 271 of file AlephKernel.cc.
References Arcane::TraceAccessor::debug(), Arcane::ITraceMng::flush(), and Arcane::TraceAccessor::traceMng().
|
inline |
Definition at line 164 of file AlephKernel.h.
|
inline |
Definition at line 147 of file AlephKernel.h.
|
inline |
Definition at line 156 of file AlephKernel.h.
| void Arcane::AlephKernel::postSolver | ( | AlephParams * | params, |
| AlephMatrix * | fromThisMatrix, | ||
| AlephVector * | fromeThisX, | ||
| AlephVector * | fromThisB ) |
Definition at line 427 of file AlephKernel.cc.
|
inline |
Definition at line 149 of file AlephKernel.h.
| void Arcane::AlephKernel::setup | ( | void | ) |
Setup: general configuration
Definition at line 149 of file AlephKernel.cc.
References Arcane::Array< T >::add(), AlephKernel(), Arcane::TraceAccessor::debug(), and Arcane::Array< T >::view().
Referenced by AlephKernel(), AlephKernel(), and AlephKernel().
|
inline |
Definition at line 150 of file AlephKernel.h.
|
inline |
Definition at line 171 of file AlephKernel.h.
Definition at line 165 of file AlephKernel.h.
| ISubDomain * Arcane::AlephKernel::subDomain | ( | void | ) |
Definition at line 600 of file AlephKernel.cc.
|
inline |
Definition at line 166 of file AlephKernel.h.
| AlephVector * Arcane::AlephKernel::syncSolver | ( | Integer | gid, |
| Integer & | nb_iteration, | ||
| Real * | residual_norm ) |
These are the arguments that must be filled bf8d3adf
Definition at line 501 of file AlephKernel.cc.
References AlephKernel(), Arcane::TraceAccessor::debug(), Arcane::ITraceMng::flush(), and Arcane::TraceAccessor::traceMng().
|
inline |
Definition at line 154 of file AlephKernel.h.
|
inline |
Definition at line 146 of file AlephKernel.h.
|
inline |
Definition at line 158 of file AlephKernel.h.
| void Arcane::AlephKernel::workSolver | ( | void | ) |
Definition at line 542 of file AlephKernel.cc.
|
inline |
Definition at line 157 of file AlephKernel.h.
|
private |
Definition at line 196 of file AlephKernel.h.
|
private |
Definition at line 210 of file AlephKernel.h.
|
private |
Definition at line 191 of file AlephKernel.h.
|
private |
Definition at line 192 of file AlephKernel.h.
|
private |
Definition at line 202 of file AlephKernel.h.
|
private |
Definition at line 185 of file AlephKernel.h.
|
private |
Definition at line 195 of file AlephKernel.h.
|
private |
Definition at line 180 of file AlephKernel.h.
|
private |
Definition at line 209 of file AlephKernel.h.
|
private |
Definition at line 194 of file AlephKernel.h.
|
private |
Definition at line 186 of file AlephKernel.h.
|
private |
Definition at line 181 of file AlephKernel.h.
|
private |
Definition at line 198 of file AlephKernel.h.
|
private |
Definition at line 211 of file AlephKernel.h.
|
private |
Definition at line 182 of file AlephKernel.h.
|
private |
Definition at line 201 of file AlephKernel.h.
|
private |
Definition at line 199 of file AlephKernel.h.
|
private |
Definition at line 203 of file AlephKernel.h.
|
private |
Definition at line 207 of file AlephKernel.h.
|
private |
Definition at line 200 of file AlephKernel.h.
|
private |
Definition at line 179 of file AlephKernel.h.
|
private |
Definition at line 208 of file AlephKernel.h.
|
private |
Definition at line 184 of file AlephKernel.h.
|
private |
Definition at line 193 of file AlephKernel.h.
|
private |
Definition at line 197 of file AlephKernel.h.
|
private |
Definition at line 187 of file AlephKernel.h.
|
private |
Definition at line 183 of file AlephKernel.h.
|
staticconstexpr |
Definition at line 122 of file AlephKernel.h.
|
staticconstexpr |
Definition at line 120 of file AlephKernel.h.
|
staticconstexpr |
Definition at line 123 of file AlephKernel.h.
|
staticconstexpr |
Definition at line 121 of file AlephKernel.h.