Ensemble des classes gérant la concurrence. Plus de détails...
Classes | |
class | Arcane::TaskContext |
Contexte d'éxecution d'une tâche. Plus de détails... | |
class | Arcane::ITask |
Interface d'une tâche concourante. Plus de détails... | |
class | Arcane::TaskFactory |
Fabrique pour les tâches. Plus de détails... | |
class | Arcane::ParallelLoopOptions |
Options d'exécution d'une boucle parallèle en multi-thread. Plus de détails... | |
Fonctions | |
template<typename InstanceType , typename ItemType > | |
void | Arcane::arcaneParallelForeach (const ItemVectorView &items_view, const ForLoopRunInfo &run_info, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
Applique en concurrence la méthode function de l'instance instance sur la vue items_view avec les options options. | |
template<typename LambdaType > | |
void | Arcane::arcaneParallelForeach (const ItemVectorView &items_view, const ForLoopRunInfo &run_info, const LambdaType &lambda_function) |
Applique en concurrence la fonction lambda lambda_function instance sur la vue items_view avec les options options. | |
template<typename InstanceType , typename ItemType > | |
void | Arcane::arcaneParallelForeach (const ItemVectorView &items_view, const ParallelLoopOptions &options, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
Applique en concurrence la méthode function de l'instance instance sur la vue items_view avec les options options. | |
template<typename InstanceType , typename ItemType > | |
void | Arcane::arcaneParallelForeach (const ItemGroup &items, const ForLoopRunInfo &run_info, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
Applique en concurrence la méthode function de l'instance instance sur le groupe items avec les options options. | |
template<typename InstanceType , typename ItemType > | |
void | Arcane::arcaneParallelForeach (const ItemVectorView &items_view, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
Applique en concurrence la méthode function de l'instance instance sur la vue items_view. | |
template<typename InstanceType , typename ItemType > | |
void | Arcane::arcaneParallelForeach (const ItemGroup &items, InstanceType *instance, void(InstanceType::*function)(ItemVectorViewT< ItemType > items)) |
Applique en concurrence la méthode function de l'instance instance sur le groupe items. | |
template<typename LambdaType > | |
void | Arcane::arcaneParallelForeach (const ItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
Applique en concurrence la fonction lambda lambda_function instance sur la vue items_view avec les options options. | |
template<typename LambdaType > | |
void | Arcane::arcaneParallelForeach (const ItemGroup &items, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
Applique en concurrence la fonction lambda lambda_function sur le groupe items avec les options options. | |
template<typename LambdaType > | |
void | Arcane::arcaneParallelForeach (const ItemVectorView &items_view, const LambdaType &lambda_function) |
Applique en concurrence la fonction lambda lambda_function instance sur la vue items_view. | |
template<typename LambdaType > | |
void | Arcane::arcaneParallelForeach (const ItemGroup &items, const LambdaType &lambda_function) |
Applique en concurrence la fonction lambda lambda_function sur le groupe items. | |
template<typename InstanceType > | |
void | Arcane::arcaneParallelFor (Integer i0, Integer size, InstanceType *itype, void(InstanceType::*lambda_function)(Integer i0, Integer size)) |
Applique en concurrence la fonction lambda lambda_function sur l'intervalle d'itération [i0,i0+size]. | |
template<typename LambdaType > | |
void | Arcane::arcaneParallelFor (Integer i0, Integer size, const ForLoopRunInfo &options, const LambdaType &lambda_function) |
Applique en concurrence la fonction lambda lambda_function sur l'intervalle d'itération [i0,i0+size] avec les options options. | |
template<typename LambdaType > | |
void | Arcane::arcaneParallelFor (Integer i0, Integer size, const ParallelLoopOptions &options, const LambdaType &lambda_function) |
Applique en concurrence la fonction lambda lambda_function sur l'intervalle d'itération [i0,i0+size] avec les options options. | |
template<typename LambdaType , typename... Views> | |
void | Arcane::arcaneParallelForVa (const ForLoopRunInfo &run_info, const LambdaType &lambda_function, Views... views) |
Applique en concurrence la fonction lambda lambda_function instance sur les vues des containers views avec les options options. | |
Ensemble des classes gérant la concurrence.
Pour plus de renseignements, se reporter à la page Concurrence et multi-threading
|
inline |
Applique en concurrence la fonction lambda lambda_function sur l'intervalle d'itération [i0,i0+size] avec les options options.
Définition à la ligne 213 du fichier Concurrency.h.
Références Arcane::TaskFactory::executeParallelFor().
|
inline |
Applique en concurrence la fonction lambda lambda_function sur l'intervalle d'itération [i0,i0+size] avec les options options.
Définition à la ligne 227 du fichier Concurrency.h.
Références Arcane::arcaneParallelFor().
|
inline |
Applique en concurrence la fonction lambda lambda_function sur l'intervalle d'itération [i0,i0+size].
Définition à la ligne 199 du fichier Concurrency.h.
Références Arcane::TaskFactory::executeParallelFor().
Référencé par Arcane::Accelerator::impl::_applyEnvCells(), Arcane::Accelerator::impl::_applyGenericLoop(), Arcane::arcaneParallelFor(), Arcane::arcaneParallelFor(), Arcane::arcaneParallelFor(), et Arcane::arcaneParallelFor().
|
inline |
Applique en concurrence la méthode function de l'instance instance sur le groupe items avec les options options.
Définition à la ligne 115 du fichier Concurrency.h.
Références Arcane::ItemGroup::_paddedView(), et Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la fonction lambda lambda_function sur le groupe items.
Définition à la ligne 186 du fichier Concurrency.h.
Références Arcane::ItemGroup::_paddedView(), et Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la fonction lambda lambda_function sur le groupe items avec les options options.
Définition à la ligne 163 du fichier Concurrency.h.
Références Arcane::ItemGroup::_paddedView(), et Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la méthode function de l'instance instance sur le groupe items.
Définition à la ligne 139 du fichier Concurrency.h.
Références Arcane::ItemGroup::_paddedView(), et Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la fonction lambda lambda_function instance sur la vue items_view avec les options options.
Définition à la ligne 77 du fichier Concurrency.h.
Références Arcane::AbstractItemRangeFunctor::blockGrainSize(), Arcane::TaskFactory::defaultParallelLoopOptions(), Arcane::TaskFactory::executeParallelFor(), Arcane::AbstractItemRangeFunctor::nbBlock(), et Arcane::ParallelLoopOptions::setGrainSize().
|
inline |
Applique en concurrence la méthode function de l'instance instance sur la vue items_view avec les options options.
Définition à la ligne 54 du fichier Concurrency.h.
Références Arcane::AbstractItemRangeFunctor::blockGrainSize(), Arcane::TaskFactory::defaultParallelLoopOptions(), Arcane::TaskFactory::executeParallelFor(), Arcane::AbstractItemRangeFunctor::nbBlock(), et Arcane::ParallelLoopOptions::setGrainSize().
Référencé par Arcane::Accelerator::impl::_applyItems(), Arcane::arcaneParallelForeach(), Arcane::arcaneParallelForeach(), Arcane::arcaneParallelForeach(), Arcane::arcaneParallelForeach(), Arcane::arcaneParallelForeach(), Arcane::arcaneParallelForeach(), Arcane::arcaneParallelForeach(), et Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la fonction lambda lambda_function instance sur la vue items_view.
Définition à la ligne 175 du fichier Concurrency.h.
Références Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la fonction lambda lambda_function instance sur la vue items_view avec les options options.
Définition à la ligne 151 du fichier Concurrency.h.
Références Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la méthode function de l'instance instance sur la vue items_view avec les options options.
Définition à la ligne 102 du fichier Concurrency.h.
Références Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la méthode function de l'instance instance sur la vue items_view.
Définition à la ligne 127 du fichier Concurrency.h.
Références Arcane::arcaneParallelForeach().
|
inline |
Applique en concurrence la fonction lambda lambda_function instance sur les vues des containers views avec les options options.
Définition à la ligne 253 du fichier Concurrency.h.
Références ARCANE_FATAL, et Arcane::TaskFactory::executeParallelFor().