Concurrency implementation. More...
Classes | |
| class | IParallelSort |
| Interface of a parallel sorting algorithm. More... | |
| class | BitonicSortDefaultTraits |
| Provides the necessary operations for sorting via the BitonicSort class. More... | |
| class | BitonicSort |
| Parallel bitonic sort algorithm. More... | |
| class | GhostItemsVariableParallelOperation |
| Parallel operations on ghost entities. More... | |
| class | IStat |
| Statistics on parallelism. More... | |
| class | Stat |
| Statistics on parallelism. More... | |
| class | VariableParallelOperationBase |
| Interface for a class of parallel operations on variables. More... | |
| class | IRequestCreator |
| Interface for a request creator. More... | |
| class | IRequestList |
| Message request list. More... | |
| class | ISubRequest |
| Sub-request of a request. More... | |
| class | MessageId |
| MessageId. More... | |
| class | MessageRank |
| Rank of a message. More... | |
| class | MessageSourceInfo |
| Information about the source of a message. More... | |
| class | MessageTag |
| Message tag. More... | |
| class | PointToPointMessageInfo |
| Information for sending/receiving a point-to-point message. More... | |
| class | Request |
| Message request. More... | |
| class | Communicator |
| Communicator for message exchange. More... | |
Enumerations | |
| enum | eReduceType |
| Supported reduction types. More... | |
| enum | eWaitType |
| Wait type. More... | |
| enum | eBlockingType |
| Type indicating whether a message is blocking or not. More... | |
| enum | ePointToPointMessageType |
| Point-to-point message type. More... | |
Functions | |
| template<typename InstanceType, typename ItemType> | |
| void | Foreach (const ItemVectorView &items_view, const ParallelLoopOptions &options, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
| template<typename InstanceType, typename ItemType> | |
| void | Foreach (const ItemGroup &items, const ParallelLoopOptions &options, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
| template<typename InstanceType, typename ItemType> | |
| void | Foreach (const ItemVectorView &items_view, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
| template<typename InstanceType, typename ItemType> | |
| void | Foreach (const ItemGroup &items, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
| template<typename LambdaType> | |
| void | Foreach (const ItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
| template<typename LambdaType> | |
| void | Foreach (const ItemGroup &items, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
| template<typename LambdaType> | |
| void | Foreach (const ItemVectorView &items_view, const LambdaType &lambda_function) |
| template<typename LambdaType> | |
| void | Foreach (const ItemGroup &items, const LambdaType &lambda_function) |
| template<typename InstanceType> | |
| ARCANE_DEPRECATED_122 void | For (Integer i0, Integer size, Integer grain_size, InstanceType *itype, void(InstanceType::*lambda_function)(Integer i0, Integer size)) |
| template<typename InstanceType> | |
| void | For (Integer i0, Integer size, const ParallelLoopOptions &options, InstanceType *itype, void(InstanceType::*lambda_function)(Integer i0, Integer size)) |
| template<typename LambdaType> | |
| ARCANE_DEPRECATED_122 void | For (Integer i0, Integer size, Integer grain_size, const LambdaType &lambda_function) |
| template<typename InstanceType> | |
| void | For (Integer i0, Integer size, InstanceType *itype, void(InstanceType::*lambda_function)(Integer i0, Integer size)) |
| template<typename LambdaType> | |
| void | For (Integer i0, Integer size, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
| template<typename LambdaType> | |
| void | For (Integer i0, Integer size, const LambdaType &lambda_function) |
| IStat * | createDefaultStat () |
| Creates a default instance. | |
| void | dumpJSON (JSONWriter &writer, const Arccore::MessagePassing::OneStat &os, bool cumulative_stat=true) |
| Free function for dumping a message stat into JSON. | |
| void | printStatsCollective (IStat *s, IParallelMng *pm) |
| Displays the cumulative statistics across all ranks of pm. | |
| template<typename LambdaType> | |
| void | Foreach (const ComponentItemVectorView &items_view, const LambdaType &lambda_function) |
| Applies the lambda function lambda_function instance concurrently on the component view items_view. | |
| template<typename LambdaType> | |
| void | Foreach (const ComponentItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
| Applies the lambda function lambda_function instance concurrently on the component view items_view with the options options. | |
| template<typename LambdaType> | |
| void | Foreach (const EnvItemVectorView &items_view, const LambdaType &lambda_function) |
| Applies the lambda function lambda_function instance concurrently on the environment view items_view. | |
| template<typename LambdaType> | |
| void | Foreach (const EnvItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
| Applies the lambda function lambda_function instance concurrently on the environment view items_view with the options options. | |
| template<typename LambdaType> | |
| void | Foreach (const MatItemVectorView &items_view, const LambdaType &lambda_function) |
| Applies the lambda function lambda_function instance concurrently on the material view items_view. | |
| template<typename LambdaType> | |
| void | Foreach (const MatItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
| Applies the lambda function lambda_function instance concurrently on the material view items_view with the options options. | |
Concurrency implementation.
Types of parallelism classes.
Type indicating whether a message is blocking or not.
Definition at line 132 of file MessagePassingGlobal.h.
Point-to-point message type.
Definition at line 144 of file MessagePassingGlobal.h.
Supported reduction types.
Definition at line 110 of file MessagePassingGlobal.h.
Wait type.
Definition at line 120 of file MessagePassingGlobal.h.
| IStat * Arcane::Parallel::createDefaultStat | ( | ) |
Creates a default instance.
Definition at line 128 of file arcane/src/arcane/core/parallel/Stat.cc.
| void Arcane::Parallel::dumpJSON | ( | JSONWriter & | writer, |
| const Arccore::MessagePassing::OneStat & | os, | ||
| bool | cumulative_stat = true ) |
Free function for dumping a message stat into JSON.
Definition at line 137 of file arcane/src/arcane/core/parallel/Stat.cc.
References Arcane::MessagePassing::OneStat::cumulativeNbMessage(), Arcane::MessagePassing::OneStat::cumulativeTotalSize(), Arcane::MessagePassing::OneStat::cumulativeTotalTime(), Arcane::MessagePassing::OneStat::name(), Arcane::MessagePassing::OneStat::nbMessage(), Arcane::MessagePassing::OneStat::totalSize(), and Arcane::MessagePassing::OneStat::totalTime().
Referenced by Arcane::Parallel::Stat::dumpJSON().
|
inline |
Definition at line 436 of file Concurrency.h.
References Arcane::TaskFactory::executeParallelFor().
|
inline |
Definition at line 425 of file Concurrency.h.
References Arcane::TaskFactory::executeParallelFor().
|
inline |
Definition at line 391 of file Concurrency.h.
References Arcane::TaskFactory::executeParallelFor().
|
inline |
Definition at line 413 of file Concurrency.h.
References Arcane::TaskFactory::executeParallelFor().
|
inline |
Definition at line 402 of file Concurrency.h.
References Arcane::TaskFactory::executeParallelFor().
|
inline |
Definition at line 379 of file Concurrency.h.
References Arcane::TaskFactory::executeParallelFor().
|
inline |
Definition at line 370 of file Concurrency.h.
References Arcane::ItemGroup::_paddedView(), and Foreach().
|
inline |
Definition at line 349 of file Concurrency.h.
References Arcane::ItemGroup::_paddedView(), and Foreach().
|
inline |
Definition at line 303 of file Concurrency.h.
References Foreach().
|
inline |
Definition at line 325 of file Concurrency.h.
References Foreach().
|
inline |
Definition at line 359 of file Concurrency.h.
References Arcane::AbstractItemRangeFunctor::blockGrainSize(), Arcane::TaskFactory::executeParallelFor(), and Arcane::AbstractItemRangeFunctor::nbBlock().
|
inline |
Definition at line 335 of file Concurrency.h.
References Arcane::AbstractItemRangeFunctor::blockGrainSize(), Arcane::TaskFactory::executeParallelFor(), Arcane::ParallelLoopOptions::grainSize(), Arcane::AbstractItemRangeFunctor::nbBlock(), and Arcane::ParallelLoopOptions::setGrainSize().
|
inline |
Definition at line 288 of file Concurrency.h.
References Arcane::AbstractItemRangeFunctor::blockGrainSize(), Arcane::TaskFactory::executeParallelFor(), Arcane::ParallelLoopOptions::grainSize(), Arcane::AbstractItemRangeFunctor::nbBlock(), and Arcane::ParallelLoopOptions::setGrainSize().
Referenced by Foreach(), Foreach(), Foreach(), and Foreach().
|
inline |
Definition at line 314 of file Concurrency.h.
References Arcane::AbstractItemRangeFunctor::blockGrainSize(), Arcane::TaskFactory::executeParallelFor(), and Arcane::AbstractItemRangeFunctor::nbBlock().
| void Arcane::Parallel::printStatsCollective | ( | IStat * | s, |
| IParallelMng * | pm ) |
Displays the cumulative statistics across all ranks of pm.
Definition at line 354 of file arcane/src/arcane/core/parallel/Stat.cc.
References Arcane::Parallel::IStat::printCollective().