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

Class allowing the creation of a memory window for a node of computation. More...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/message_passing/arccore/message_passing/internal/IContigMachineShMemWinBaseInternal.h>

Inheritance diagram for Arcane::MessagePassing::IContigMachineShMemWinBaseInternal:
Collaboration diagram for Arcane::MessagePassing::IContigMachineShMemWinBaseInternal:

Public Member Functions

virtual Int32 sizeofOneElem () const =0
 Method allowing the retrieval of the size of an element in the window.
virtual Span< std::byte > segmentView ()=0
 Method allowing the retrieval of a view of its segment.
virtual Span< std::byte > segmentView (Int32 rank)=0
 Method allowing the retrieval of a view of the segment of another subdomain of the node.
virtual Span< std::byte > windowView ()=0
 Method allowing the retrieval of a view of the entire window.
virtual Span< const std::byte > segmentConstView () const =0
 Method allowing the retrieval of a view of its segment.
virtual Span< const std::byte > segmentConstView (Int32 rank) const =0
 Method allowing the retrieval of a view of the segment of another subdomain of the node.
virtual Span< const std::byte > windowConstView () const =0
 Method allowing the retrieval of a view of the entire window.
virtual void resizeSegment (Int64 new_sizeof_segment)=0
 Method allowing the resizing of the window segments.
virtual ConstArrayView< Int32machineRanks () const =0
 Method allowing the retrieval of the ranks that possess a segment in the window.
virtual void barrier () const =0
 Method allowing waiting until all processes/threads of the node call this method to continue execution.

Detailed Description

Class allowing the creation of a memory window for a node of computation.

This window will be contiguous in memory and will be accessible by all processes of the node.

Definition at line 37 of file IContigMachineShMemWinBaseInternal.h.

Member Function Documentation

◆ barrier()

virtual void Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::barrier ( ) const
pure virtual

◆ machineRanks()

virtual ConstArrayView< Int32 > Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::machineRanks ( ) const
pure virtual

Method allowing the retrieval of the ranks that possess a segment in the window.

The order of the processes in the returned view corresponds to the order of the segments in the window.

Returns
A view containing the rank IDs.

Implemented in Arcane::MessagePassing::HybridContigMachineShMemWinBaseInternal, Arcane::MessagePassing::Mpi::MpiContigMachineShMemWinBaseInternal, Arcane::MessagePassing::SharedMemoryContigMachineShMemWinBaseInternal, and Arcane::SequentialContigMachineShMemWinBaseInternal.

◆ resizeSegment()

virtual void Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::resizeSegment ( Int64 new_sizeof_segment)
pure virtual

Method allowing the resizing of the window segments.

Collective call.

The total size of the window must be less than or equal to the original size.

Parameters
new_sizeof_segmentThe new size of our segment (in bytes).

Implemented in Arcane::MessagePassing::HybridContigMachineShMemWinBaseInternal, Arcane::MessagePassing::Mpi::MpiContigMachineShMemWinBaseInternal, Arcane::MessagePassing::SharedMemoryContigMachineShMemWinBaseInternal, and Arcane::SequentialContigMachineShMemWinBaseInternal.

◆ segmentConstView() [1/2]

virtual Span< const std::byte > Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::segmentConstView ( ) const
pure virtual

◆ segmentConstView() [2/2]

virtual Span< const std::byte > Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::segmentConstView ( Int32 rank) const
pure virtual

Method allowing the retrieval of a view of the segment of another subdomain of the node.

Parameters
rankThe rank of the subdomain.
Returns
A view.

Implemented in Arcane::MessagePassing::HybridContigMachineShMemWinBaseInternal, Arcane::MessagePassing::Mpi::MpiContigMachineShMemWinBaseInternal, Arcane::MessagePassing::SharedMemoryContigMachineShMemWinBaseInternal, and Arcane::SequentialContigMachineShMemWinBaseInternal.

◆ segmentView() [1/2]

virtual Span< std::byte > Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::segmentView ( )
pure virtual

◆ segmentView() [2/2]

virtual Span< std::byte > Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::segmentView ( Int32 rank)
pure virtual

Method allowing the retrieval of a view of the segment of another subdomain of the node.

Parameters
rankThe rank of the subdomain.
Returns
A view.

Implemented in Arcane::MessagePassing::HybridContigMachineShMemWinBaseInternal, Arcane::MessagePassing::Mpi::MpiContigMachineShMemWinBaseInternal, Arcane::MessagePassing::SharedMemoryContigMachineShMemWinBaseInternal, and Arcane::SequentialContigMachineShMemWinBaseInternal.

◆ sizeofOneElem()

virtual Int32 Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::sizeofOneElem ( ) const
pure virtual

◆ windowConstView()

virtual Span< const std::byte > Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::windowConstView ( ) const
pure virtual

◆ windowView()

virtual Span< std::byte > Arcane::MessagePassing::IContigMachineShMemWinBaseInternal::windowView ( )
pure virtual

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