Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::IParallelTopology Class Referenceabstract

Information on the computing core allocation topology. More...

#include <arcane/core/IParallelTopology.h>

Inheritance diagram for Arcane::IParallelTopology:
Collaboration diagram for Arcane::IParallelTopology:

Public Member Functions

virtual ~IParallelTopology ()=default
 Frees resources.
virtual IParallelMngparallelMng () const =0
 Associated parallelism manager.
virtual bool isMasterMachine () const =0
 Indicates if this rank is the master rank for a machine (node).
virtual Int32ConstArrayView machineRanks () const =0
 List of ranks that are on the same machine.
virtual Int32 machineRank () const =0
 Rank of this instance in the list of machines (nodes).
virtual Int32ConstArrayView masterMachineRanks () const =0
 List of master ranks for each machine (node).
virtual bool isMasterProcess () const =0
 Indicates if this rank is the master within the ranks of this process.
virtual Int32ConstArrayView processRanks () const =0
 List of ranks that are in the same process (in multi-threading).
virtual Int32 processRank () const =0
 Rank of this instance in the list of processes.
virtual Int32ConstArrayView masterProcessRanks () const =0
 List of master ranks for each process.

Detailed Description

Information on the computing core allocation topology.

An instance of this class is linked to an IParallelMng.

It allows knowing how the ranks of this IParallelMng are allocated on the cluster and within the processes.

Definition at line 38 of file IParallelTopology.h.

Member Function Documentation

◆ isMasterMachine()

virtual bool Arcane::IParallelTopology::isMasterMachine ( ) const
pure virtual

Indicates if this rank is the master rank for a machine (node).

Implemented in Arcane::ParallelTopology.

◆ isMasterProcess()

virtual bool Arcane::IParallelTopology::isMasterProcess ( ) const
pure virtual

Indicates if this rank is the master within the ranks of this process.

Implemented in Arcane::ParallelTopology.

◆ machineRank()

virtual Int32 Arcane::IParallelTopology::machineRank ( ) const
pure virtual

Rank of this instance in the list of machines (nodes).

This rank is between 0 and masterMachineRanks().size().

Implemented in Arcane::ParallelTopology.

◆ machineRanks()

virtual Int32ConstArrayView Arcane::IParallelTopology::machineRanks ( ) const
pure virtual

List of ranks that are on the same machine.

Implemented in Arcane::ParallelTopology.

◆ masterMachineRanks()

virtual Int32ConstArrayView Arcane::IParallelTopology::masterMachineRanks ( ) const
pure virtual

List of master ranks for each machine (node).

This list is the same for all ranks.

Implemented in Arcane::ParallelTopology.

◆ masterProcessRanks()

virtual Int32ConstArrayView Arcane::IParallelTopology::masterProcessRanks ( ) const
pure virtual

List of master ranks for each process.

This list is the same for all ranks.

Implemented in Arcane::ParallelTopology.

◆ parallelMng()

virtual IParallelMng * Arcane::IParallelTopology::parallelMng ( ) const
pure virtual

Associated parallelism manager.

Implemented in Arcane::ParallelTopology.

◆ processRank()

virtual Int32 Arcane::IParallelTopology::processRank ( ) const
pure virtual

Rank of this instance in the list of processes.

This rank is between 0 and masterProcessRanks().size().

Implemented in Arcane::ParallelTopology.

◆ processRanks()

virtual Int32ConstArrayView Arcane::IParallelTopology::processRanks ( ) const
pure virtual

List of ranks that are in the same process (in multi-threading).

Implemented in Arcane::ParallelTopology.


The documentation for this class was generated from the following file: