Class allowing access to the shared memory part between sub-domains of the same node of a 2D array variable. More...
#include <arcane/core/internal/MachineShMemWinVariableBase.h>
Public Member Functions | |
| MachineShMemWinVariable2DBase (IVariable *var) | |
| Constructor. | |
| void | updateVariable (Int64 nb_elem_dim1, Int64 nb_elem_dim2, Int64 sizeof_elem) |
| Int64 | nbElemDim1 (const Int32 rank) const |
| Int64 | nbElemDim2 (const Int32 rank) const |
| Public Member Functions inherited from Arcane::MachineShMemWinVariableBase | |
| MachineShMemWinVariableBase (IVariable *var) | |
| Constructor. | |
| ConstArrayView< Int32 > | machineRanks () const |
| Method allowing retrieval of the ranks that possess a segment in the window. | |
| void | barrier () const |
| Method allowing waiting until all processes/threads of the node call this method to continue execution. | |
| Span< std::byte > | segmentView (Int32 rank) const |
| Method allowing retrieval of a view on the segment of another sub-domain of the node. | |
| void | updateVariable (Int64 nb_elem_dim1, Int64 sizeof_elem) |
Private Attributes | |
| impl::HashTableMap2< Int32, Int64 > | m_nb_elem_dim1 |
| impl::HashTableMap2< Int32, Int64 > | m_nb_elem_dim2 |
Additional Inherited Members | |
| Protected Attributes inherited from Arcane::MachineShMemWinVariableBase | |
| IVariable * | m_var = nullptr |
| IParallelMng * | m_pm = nullptr |
| ConstArrayView< Int32 > | m_machine_ranks |
| impl::HashTableMap2< Int32, Int64 > | m_sizeof_var |
Class allowing access to the shared memory part between sub-domains of the same node of a 2D array variable.
It is necessary that this variable be allocated in shared memory with the property "IVariable::PInShMem".
In this class, the two dimensions can be different for each sub-domain.
Definition at line 114 of file MachineShMemWinVariableBase.h.
|
explicit |
Constructor.
| var | Variable having the property "IVariable::PInShMem". |
Definition at line 118 of file MachineShMemWinVariableBase.cc.
References Arcane::MachineShMemWinVariableBase::MachineShMemWinVariableBase().
Definition at line 136 of file MachineShMemWinVariableBase.h.
Definition at line 137 of file MachineShMemWinVariableBase.h.
| void Arcane::MachineShMemWinVariable2DBase::updateVariable | ( | Int64 | nb_elem_dim1, |
| Int64 | nb_elem_dim2, | ||
| Int64 | sizeof_elem ) |
| nb_elem_dim1 | In number of elements |
| nb_elem_dim2 | In number of elements |
| sizeof_elem | In bytes |
Definition at line 129 of file MachineShMemWinVariableBase.cc.
References Arcane::ContigMachineShMemWin< Type >::barrier(), Arcane::ContigMachineShMemWin< Type >::segmentView(), and Arcane::ContigMachineShMemWin< Type >::windowConstView().
|
private |
Definition at line 142 of file MachineShMemWinVariableBase.h.
|
private |
Definition at line 143 of file MachineShMemWinVariableBase.h.