|
| | GroupableAbstraction (CopyableNode *const copyableNode, size_t const &numberThreads) |
| | Constructor using the node abstraction to call the user-defined copy and the number of threads.
|
| |
| | ~GroupableAbstraction () override=default |
| | Default destructor.
|
| |
| int | threadId () const |
| | Accessor to thread id.
|
| |
| std::shared_ptr< CopyableNode > | callCopyAndRegisterInGroup () |
| | Call the used-defined copy and register the copy in the group.
|
| |
| virtual void | copyInnerStructure (CopyableCore *copyableCore)=0 |
| | Copy the inner structure of the core.
|
| |
| | CopyableAbstraction (CopyableNode *const copyableNode) |
| | Constructor using a node abstraction.
|
| |
| virtual | ~CopyableAbstraction ()=default |
| | Default destructor.
|
| |
| | AnyGroupableAbstraction (size_t const numberThreads) |
| | Constructor using the number of threads.
|
| |
| virtual | ~AnyGroupableAbstraction ()=default |
| | Default destructor.
|
| |
| size_t | numberThreads () const |
| | Accessor to the number of threads.
|
| |
| bool | isInGroup () const |
| | Test if a group is needed.
|
| |
| std::string | nodeId () const |
| | Accessor to the node id (redirection to NodeAbstraction::nodeId)
|
| |
| std::shared_ptr< std::set< AnyGroupableAbstraction * > > const & | group () const |
| | Group of cores accessor.
|
| |
| std::shared_ptr< std::set< NodeAbstraction * > > | groupAsNodes () const |
| | Create a set of the NodeAbstraction constituting the group.
|
| |
| AnyGroupableAbstraction * | groupRepresentative () const |
| | Group representative accessor.
|
| |
| std::string | groupRepresentativeId () const |
| | Group id representative accessor.
|
| |
| void | groupRepresentative (AnyGroupableAbstraction *groupRepresentative) |
| | Group representative setter.
|
| |
| void | group (std::shared_ptr< std::set< AnyGroupableAbstraction * > > const &group) |
| | Group setter.
|
| |
| size_t | numberActiveThreadInGroup () const |
| | Accessor to the number of nodes alive in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxWaitDurationGroup () const |
| | Accessor to the min / max wait duration of the nodes in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDWaitDurationGroup () const |
| | Accessor to the mean / standard deviation wait duration of the nodes in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxExecutionDurationGroup () const |
| | Accessor to the min / max execution duration of the nodes in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDExecutionDurationGroup () const |
| | Accessor to the mean / standard deviation execution duration of the nodes in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxExecTimePerElementGroup () const |
| | Accessor to the min / max execution per elements duration of the nodes in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDExecTimePerElementGroup () const |
| | Accessor to the mean / standard deviation execution per elements duration of the nodes in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxMemoryWaitTimeGroup () const |
| | Accessor to the min / max wait time duration of the nodes in the group.
|
| |
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDMemoryWaitTimePerElementGroup () const |
| | Accessor to the mean / standard deviation wait time duration of the nodes in the group.
|
| |
| std::pair< size_t, size_t > | minmaxNumberElementsReceivedGroup () const |
| | Accessor to the min / max number of elements received in the group.
|
| |
| std::pair< double, double > | meanSDNumberElementsReceivedGroup () const |
| | Accessor to the mean / standard deviation number of elements received in the group.
|
| |
| virtual void | createGroup (std::map< NodeAbstraction *, std::vector< NodeAbstraction * > > &)=0 |
| | Create a group to insert in the map.
|
| |
template<tool::CopyableNode CopyableNode, class CopyableCore>
class hh::core::abstraction::GroupableAbstraction< CopyableNode, CopyableCore >
Typed abstraction for groupable node.
- Template Parameters
-
| CopyableNode | Type of the node to copy and group |
| CopyableCore | Type of the core to copy and group |
Definition at line 40 of file groupable_abstraction.h.