Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Concurrence

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::ITaskFunctor
 Interface d'un fonctor pour une tâche. Plus de détails...
 
class  Arcane::TaskFunctor< InstanceType >
 Fonctor sans argument pour une tâche. Plus de détails...
 
class  Arcane::TaskFunctorWithContext< InstanceType >
 Fonctor pour une tâche prenant un TaskContext en argument. Plus de détails...
 
class  Arcane::ITask
 Interface d'une tâche concourante. Plus de détails...
 
class  Arcane::ITaskImplementation
 Implémentation d'une fabrique de tâches. 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.
 
template<typename LambdaType >
void Arcane::arcaneParallelForeach (const ComponentItemVectorView &items_view, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view.
 
template<typename LambdaType >
void Arcane::arcaneParallelForeach (const ComponentItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view avec les options options.
 
template<typename LambdaType >
void Arcane::arcaneParallelForeach (const EnvItemVectorView &items_view, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view.
 
template<typename LambdaType >
void Arcane::arcaneParallelForeach (const EnvItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view avec les options options.
 
template<typename LambdaType >
void Arcane::arcaneParallelForeach (const MatItemVectorView &items_view, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view.
 
template<typename LambdaType >
void Arcane::arcaneParallelForeach (const MatItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view avec les options options.
 
template<typename LambdaType >
void Arcane::Parallel::Foreach (const ComponentItemVectorView &items_view, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view.
 
template<typename LambdaType >
void Arcane::Parallel::Foreach (const ComponentItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view avec les options options.
 
template<typename LambdaType >
void Arcane::Parallel::Foreach (const EnvItemVectorView &items_view, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view.
 
template<typename LambdaType >
void Arcane::Parallel::Foreach (const EnvItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view avec les options options.
 
template<typename LambdaType >
void Arcane::Parallel::Foreach (const MatItemVectorView &items_view, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view.
 
template<typename LambdaType >
void Arcane::Parallel::Foreach (const MatItemVectorView &items_view, const ParallelLoopOptions &options, const LambdaType &lambda_function)
 Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view avec les options options.
 

Description détaillée

Ensemble des classes gérant la concurrence.

Pour plus de renseignements, se reporter à la page arcanedoc_parallel_concurrency

Documentation des fonctions

◆ arcaneParallelFor() [1/3]

template<typename LambdaType >
void Arcane::arcaneParallelFor ( Integer  i0,
Integer  size,
const ForLoopRunInfo options,
const LambdaType lambda_function 
)
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().

◆ arcaneParallelFor() [2/3]

template<typename LambdaType >
void Arcane::arcaneParallelFor ( Integer  i0,
Integer  size,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
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().

◆ arcaneParallelFor() [3/3]

template<typename InstanceType >
void Arcane::arcaneParallelFor ( Integer  i0,
Integer  size,
InstanceType *  itype,
void(InstanceType::*)(Integer i0, Integer size)  lambda_function 
)
inline

◆ arcaneParallelForeach() [1/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const ComponentItemVectorView items_view,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view.

Définition à la ligne 80 du fichier MatConcurrency.h.

Références Arcane::TaskFactory::executeParallelFor().

◆ arcaneParallelForeach() [2/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const ComponentItemVectorView items_view,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view avec les options options.

Définition à la ligne 92 du fichier MatConcurrency.h.

Références Arcane::TaskFactory::executeParallelFor().

◆ arcaneParallelForeach() [3/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const EnvItemVectorView items_view,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view.

Définition à la ligne 105 du fichier MatConcurrency.h.

Références Arcane::TaskFactory::executeParallelFor().

◆ arcaneParallelForeach() [4/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const EnvItemVectorView items_view,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view avec les options options.

Définition à la ligne 117 du fichier MatConcurrency.h.

Références Arcane::TaskFactory::executeParallelFor().

◆ arcaneParallelForeach() [5/16]

template<typename InstanceType , typename ItemType >
void Arcane::arcaneParallelForeach ( const ItemGroup items,
const ForLoopRunInfo run_info,
InstanceType *  instance,
void(InstanceType::*)(ItemVectorViewT< ItemType > items)  function 
)
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().

◆ arcaneParallelForeach() [6/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const ItemGroup items,
const LambdaType lambda_function 
)
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().

◆ arcaneParallelForeach() [7/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const ItemGroup items,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
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().

◆ arcaneParallelForeach() [8/16]

template<typename InstanceType , typename ItemType >
void Arcane::arcaneParallelForeach ( const ItemGroup items,
InstanceType *  instance,
void(InstanceType::*)(ItemVectorViewT< ItemType > items)  function 
)
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().

◆ arcaneParallelForeach() [9/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const ItemVectorView items_view,
const ForLoopRunInfo run_info,
const LambdaType lambda_function 
)
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::TaskFactory::defaultParallelLoopOptions(), et Arcane::TaskFactory::executeParallelFor().

◆ arcaneParallelForeach() [10/16]

template<typename InstanceType , typename ItemType >
void Arcane::arcaneParallelForeach ( const ItemVectorView items_view,
const ForLoopRunInfo run_info,
InstanceType *  instance,
void(InstanceType::*)(ItemVectorViewT< ItemType > items)  function 
)
inline

◆ arcaneParallelForeach() [11/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const ItemVectorView items_view,
const LambdaType lambda_function 
)
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().

◆ arcaneParallelForeach() [12/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const ItemVectorView items_view,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
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().

◆ arcaneParallelForeach() [13/16]

template<typename InstanceType , typename ItemType >
void Arcane::arcaneParallelForeach ( const ItemVectorView items_view,
const ParallelLoopOptions options,
InstanceType *  instance,
void(InstanceType::*)(ItemVectorViewT< ItemType > items)  function 
)
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().

◆ arcaneParallelForeach() [14/16]

template<typename InstanceType , typename ItemType >
void Arcane::arcaneParallelForeach ( const ItemVectorView items_view,
InstanceType *  instance,
void(InstanceType::*)(ItemVectorViewT< ItemType > items)  function 
)
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().

◆ arcaneParallelForeach() [15/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const MatItemVectorView items_view,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view.

Définition à la ligne 130 du fichier MatConcurrency.h.

Références Arcane::TaskFactory::executeParallelFor().

◆ arcaneParallelForeach() [16/16]

template<typename LambdaType >
void Arcane::arcaneParallelForeach ( const MatItemVectorView items_view,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view avec les options options.

Définition à la ligne 142 du fichier MatConcurrency.h.

Références Arcane::TaskFactory::executeParallelFor().

◆ arcaneParallelForVa()

template<typename LambdaType , typename... Views>
void Arcane::arcaneParallelForVa ( const ForLoopRunInfo run_info,
const LambdaType lambda_function,
Views...  views 
)
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().

◆ Foreach() [1/6]

template<typename LambdaType >
void Arcane::Parallel::Foreach ( const ComponentItemVectorView items_view,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view.

Définition à la ligne 164 du fichier MatConcurrency.h.

Références Arcane::arcaneParallelForeach().

◆ Foreach() [2/6]

template<typename LambdaType >
void Arcane::Parallel::Foreach ( const ComponentItemVectorView items_view,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue du composant items_view avec les options options.

Définition à la ligne 175 du fichier MatConcurrency.h.

Références Arcane::arcaneParallelForeach().

◆ Foreach() [3/6]

template<typename LambdaType >
void Arcane::Parallel::Foreach ( const EnvItemVectorView items_view,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view.

Définition à la ligne 187 du fichier MatConcurrency.h.

Références Arcane::arcaneParallelForeach().

◆ Foreach() [4/6]

template<typename LambdaType >
void Arcane::Parallel::Foreach ( const EnvItemVectorView items_view,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue milieux items_view avec les options options.

Définition à la ligne 198 du fichier MatConcurrency.h.

Références Arcane::arcaneParallelForeach().

◆ Foreach() [5/6]

template<typename LambdaType >
void Arcane::Parallel::Foreach ( const MatItemVectorView items_view,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view.

Définition à la ligne 210 du fichier MatConcurrency.h.

Références Arcane::arcaneParallelForeach().

◆ Foreach() [6/6]

template<typename LambdaType >
void Arcane::Parallel::Foreach ( const MatItemVectorView items_view,
const ParallelLoopOptions options,
const LambdaType lambda_function 
)
inlineprivate

Applique en concurrence la fonction lambda lambda_function instance sur la vue matériaux items_view avec les options options.

Définition à la ligne 221 du fichier MatConcurrency.h.

Références Arcane::arcaneParallelForeach().