Wrapper autour des appels de Parmetis. Plus de détails...
#include <arcane/std/internal/MetisWrapper.h>
Fonctions membres publiques | |
MetisWrapper (IParallelMng *pm) | |
int | callPartKway (const bool print_digest, const bool gather, idx_t *vtxdist, idx_t *xadj, idx_t *adjncy, idx_t *vwgt, idx_t *adjwgt, idx_t *wgtflag, idx_t *numflag, idx_t *ncon, idx_t *nparts, real_t *tpwgts, real_t *ubvec, idx_t *options, idx_t *edgecut, idx_t *part) |
Simple wrapper autour de la routine ParMetis "ParMETIS_V3_PartKway". | |
int | callAdaptiveRepart (const bool print_digest, const bool gather, idx_t *vtxdist, idx_t *xadj, idx_t *adjncy, idx_t *vwgt, idx_t *vsize, idx_t *adjwgt, idx_t *wgtflag, idx_t *numflag, idx_t *ncon, idx_t *nparts, real_t *tpwgts, real_t *ubvec, real_t *ipc2redist, idx_t *options, idx_t *edgecut, idx_t *part) |
Simple wrapper autour de la routine ParMetis "ParMETIS_V3_AdaptiveRepart". | |
Fonctions membres publiques hérités de Arccore::TraceAccessor | |
TraceAccessor (ITraceMng *m) | |
Construit un accesseur via le gestionnaire de trace m. | |
TraceAccessor (const TraceAccessor &rhs) | |
Constructeur par recopie. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () const |
Gestionnaire de trace. | |
TraceMessage | info () const |
Flot pour un message d'information. | |
TraceMessage | pinfo () const |
Flot pour un message d'information en parallèle. | |
TraceMessage | info (char category) const |
Flot pour un message d'information d'une catégorie donnée. | |
TraceMessage | pinfo (char category) const |
Flot pour un message d'information parallèle d'une catégorie donnée. | |
TraceMessage | info (bool v) const |
Flot pour un message d'information. | |
TraceMessage | warning () const |
Flot pour un message d'avertissement. | |
TraceMessage | pwarning () const |
TraceMessage | error () const |
Flot pour un message d'erreur. | |
TraceMessage | perror () const |
TraceMessage | log () const |
Flot pour un message de log. | |
TraceMessage | plog () const |
Flot pour un message de log. | |
TraceMessage | logdate () const |
Flot pour un message de log précédé de la date. | |
TraceMessage | fatal () const |
Flot pour un message d'erreur fatale. | |
TraceMessage | pfatal () const |
Flot pour un message d'erreur fatale en parallèle. | |
TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
Flot pour un message de debug. | |
Trace::eDebugLevel | configDbgLevel () const |
Niveau debug du fichier de configuration. | |
TraceMessage | info (Int32 verbose_level) const |
Flot pour un message d'information d'un niveau donné | |
TraceMessage | linfo () const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
TraceMessage | linfo (Int32 relative_level) const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
void | fatalMessage (const StandaloneTraceMessage &o) const |
Types privés | |
using | MetisCall = std::function< int(IParallelMng *pm, MetisGraphView graph, ArrayView< idx_t > vtxdist)> |
Fonctions membres privées | |
int | _callMetisWith2Processors (const Int32 ncon, const bool need_part, ConstArrayView< idx_t > vtxdist, MetisGraphView my_graph, MetisCall &metis) |
Appelle Metis en regroupant le graph sur 2 processeurs. | |
Attributs privés | |
IParallelMng * | m_parallel_mng = nullptr |
Membres hérités additionnels | |
Fonctions membres protégées hérités de Arccore::TraceAccessor | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Wrapper autour des appels de Parmetis.
Définition à la ligne 35 du fichier MetisWrapper.h.
|
private |
Définition à la ligne 40 du fichier MetisWrapper.h.
|
explicit |
Définition à la ligne 37 du fichier MetisWrapper.cc.
|
private |
Appelle Metis en regroupant le graph sur 2 processeurs.
Définition à la ligne 52 du fichier MetisWrapper.cc.
int Arcane::MetisWrapper::callAdaptiveRepart | ( | const bool | print_digest, |
const bool | gather, | ||
idx_t * | vtxdist, | ||
idx_t * | xadj, | ||
idx_t * | adjncy, | ||
idx_t * | vwgt, | ||
idx_t * | vsize, | ||
idx_t * | adjwgt, | ||
idx_t * | wgtflag, | ||
idx_t * | numflag, | ||
idx_t * | ncon, | ||
idx_t * | nparts, | ||
real_t * | tpwgts, | ||
real_t * | ubvec, | ||
real_t * | ipc2redist, | ||
idx_t * | options, | ||
idx_t * | edgecut, | ||
idx_t * | part | ||
) |
Simple wrapper autour de la routine ParMetis "ParMETIS_V3_AdaptiveRepart".
Lorsque gather == true, le graph est regroupe sur 2 processeurs avant appel a ParMETIS_V3_AdaptiveRepart. Lorsque print_digest == true, la signature des entrees / sorties de ParMETIS_V3_AdaptiveRepart est affichee.
Définition à la ligne 222 du fichier MetisWrapper.cc.
Références Arcane::IParallelMng::communicator(), Arcane::MetisGraphDigest::computeInputDigest(), et Arcane::MetisGraphDigest::computeOutputDigest().
int Arcane::MetisWrapper::callPartKway | ( | const bool | print_digest, |
const bool | gather, | ||
idx_t * | vtxdist, | ||
idx_t * | xadj, | ||
idx_t * | adjncy, | ||
idx_t * | vwgt, | ||
idx_t * | adjwgt, | ||
idx_t * | wgtflag, | ||
idx_t * | numflag, | ||
idx_t * | ncon, | ||
idx_t * | nparts, | ||
real_t * | tpwgts, | ||
real_t * | ubvec, | ||
idx_t * | options, | ||
idx_t * | edgecut, | ||
idx_t * | part | ||
) |
Simple wrapper autour de la routine ParMetis "ParMETIS_V3_PartKway".
Lorsque gather == true, le graph est regroupe sur 2 processeurs avant appel a ParMETIS_V3_PartKway. Lorsque print_digest == true, la signature des entrees / sorties de ParMETIS_V3_PartKway est affichee.
Définition à la ligne 117 du fichier MetisWrapper.cc.
Références Arcane::IParallelMng::communicator(), Arcane::MetisGraphDigest::computeInputDigest(), et Arcane::MetisGraphDigest::computeOutputDigest().
|
private |
Définition à la ligne 77 du fichier MetisWrapper.h.