Classes | |
struct | TrueOwnerInfo |
Fonctions membres publiques | |
ArcaneInitialPartitioner (ArcaneCasePartitioner *mt, ISubDomain *sd) | |
void | build () override |
void | partitionAndDistributeMeshes (ConstArrayView< IMesh * > meshes) override |
Partitionne les maillages. | |
Fonctions membres publiques hérités de Arcane::IInitialPartitioner | |
virtual | ~IInitialPartitioner () |
Libère les ressources. | |
Attributs publics | |
ISubDomain * | m_sub_domain = nullptr |
ArcaneCasePartitioner * | m_main = nullptr |
UniqueArray< TrueOwnerInfo > | m_part_indexes |
Stocke pour chaque maillage une variable indiquant pour chaque maille quelle partie la possède. | |
Fonctions membres privées | |
void | _mergeConstraints (ConstArrayView< IMesh * > meshes) |
Regroupe les mailles associées aux contraintes sur un même proc. | |
void | _printStats (Integer nb_part, IMesh *mesh, VariableCellInt32 &new_owners) |
Affiche des statistiques sur le partitionnement. | |
Définition à la ligne 62 du fichier ArcaneCasePartitioner.cc.
|
inline |
Définition à la ligne 75 du fichier ArcaneCasePartitioner.cc.
|
private |
Regroupe les mailles associées aux contraintes sur un même proc.
Définition à la ligne 151 du fichier ArcaneCasePartitioner.cc.
Références ARCANE_FATAL, Arcane::IMeshBase::cellFamily(), Arcane::IParallelMng::commRank(), ENUMERATE_CELL, Arccore::TraceAccessor::info(), Arcane::IMesh::modifier(), Arcane::ArcaneArcaneCasePartitionerObject::options(), Arcane::IMesh::partitionConstraintMng(), Arcane::IMesh::properties(), Arcane::IMesh::toPrimaryMesh(), Arccore::TraceAccessor::traceMng(), et Arcane::IMesh::utilities().
Référencé par partitionAndDistributeMeshes().
|
private |
Affiche des statistiques sur le partitionnement.
Définition à la ligne 293 du fichier ArcaneCasePartitioner.cc.
Références ENUMERATE_CELL, Arccore::TraceAccessor::info(), Arcane::IMeshBase::ownCells(), Arcane::IMesh::parallelMng(), Arcane::IParallelMng::reduce(), et Arcane::IBase::traceMng().
Référencé par partitionAndDistributeMeshes().
|
inlineoverridevirtual |
Implémente Arcane::IInitialPartitioner.
Définition à la ligne 80 du fichier ArcaneCasePartitioner.cc.
|
overridevirtual |
Partitionne les maillages.
Cette opération doit partitionner tous les mailles meshes et les distribuer sur l'ensemble des processeurs.
Implémente Arcane::IInitialPartitioner.
Définition à la ligne 206 du fichier ArcaneCasePartitioner.cc.
Références _mergeConstraints(), _printStats(), ARCANE_CHECK_POINTER, ARCANE_FATAL, Arcane::IMeshBase::cellFamily(), Arcane::IParallelMng::commSize(), ENUMERATE_CELL, ENUMERATE_NODE, Arccore::TraceAccessor::info(), Arcane::IMesh::isDynamic(), m_part_indexes, Arcane::IMesh::modifier(), Arcane::IMeshBase::nodeFamily(), Arcane::ArcaneArcaneCasePartitionerObject::options(), Arcane::IMesh::properties(), Arcane::SB_AllowNull, Arcane::Timer::TimerReal, Arcane::IMesh::toPrimaryMesh(), Arccore::TraceAccessor::traceMng(), et Arcane::IMesh::utilities().
ArcaneCasePartitioner* Arcane::ArcaneInitialPartitioner::m_main = nullptr |
Définition à la ligne 94 du fichier ArcaneCasePartitioner.cc.
UniqueArray<TrueOwnerInfo> Arcane::ArcaneInitialPartitioner::m_part_indexes |
Stocke pour chaque maillage une variable indiquant pour chaque maille quelle partie la possède.
Définition à la ligne 96 du fichier ArcaneCasePartitioner.cc.
Référencé par partitionAndDistributeMeshes().
ISubDomain* Arcane::ArcaneInitialPartitioner::m_sub_domain = nullptr |
Définition à la ligne 93 du fichier ArcaneCasePartitioner.cc.