Contexte d'exécution d'une commande sur un ensemble de blocs. Plus de détails...
Graphe d'héritage de Arcane::Accelerator::CooperativeWorkGroupLoopContext< IndexType_ >:
Graphe de collaboration de Arcane::Accelerator::CooperativeWorkGroupLoopContext< IndexType_ >:Types publics | |
| using | IndexType = IndexType_ |
Types publics hérités de Arcane::Accelerator::WorkGroupLoopContextBase< IndexType_ > | |
| using | IndexType = IndexType_ |
Fonctions membres publiques | |
| CooperativeHostWorkItemGrid | grid () const |
| Groupe courant. | |
Fonctions membres publiques hérités de Arcane::Accelerator::WorkGroupLoopContextBase< IndexType_ > | |
| HostWorkItemBlock | block () const |
| Groupe courant. | |
| HostWorkItem< IndexType > | workItem () const |
| WorkItem actif. | |
Types privés | |
| using | BaseClass = WorkGroupLoopContextBase<IndexType_> |
Fonctions membres privées | |
| constexpr | CooperativeWorkGroupLoopContext (IndexType loop_index, Int32 group_index, Int32 group_size, Int32 nb_active_item, IndexType total_size) |
| Ce constructeur est utilisé dans l'implémentation hôte. | |
| constexpr ARCCORE_DEVICE | CooperativeWorkGroupLoopContext (IndexType total_size) |
Amis | |
| class | CooperativeWorkGroupLoopRange< IndexType_ > |
Membres hérités additionnels | |
Fonctions membres protégées hérités de Arcane::Accelerator::WorkGroupLoopContextBase< IndexType_ > | |
| constexpr | WorkGroupLoopContextBase (IndexType loop_index, Int32 group_index, Int32 group_size, Int32 nb_active_item, IndexType total_size) |
| Ce constructeur est utilisé dans l'implémentation hôte. | |
| constexpr ARCCORE_DEVICE | WorkGroupLoopContextBase (IndexType total_size) |
Attributs protégés hérités de Arcane::Accelerator::WorkGroupLoopContextBase< IndexType_ > | |
| IndexType | m_loop_index = 0 |
| IndexType | m_total_size = 0 |
| Int32 | m_group_index = 0 |
| Int32 | m_group_size = 0 |
| Int32 | m_nb_active_item = 0 |
Contexte d'exécution d'une commande sur un ensemble de blocs.
Cette classe est utilisée pour l'hôte (séquentiel et multi-thread) et pour CUDA et ROCM/HIP. La méthode group() est différente sur accélérateur et sur l'hôte ce qui permet de particulariser le traitement de la commande.
Définition à la ligne 112 du fichier CooperativeWorkGroupLoopRange.h.
|
private |
Définition à la ligne 119 du fichier CooperativeWorkGroupLoopRange.h.
| using Arcane::Accelerator::CooperativeWorkGroupLoopContext< IndexType_ >::IndexType = IndexType_ |
Définition à la ligne 123 du fichier CooperativeWorkGroupLoopRange.h.
|
inlineconstexprprivate |
Ce constructeur est utilisé dans l'implémentation hôte.
Définition à la ligne 128 du fichier CooperativeWorkGroupLoopRange.h.
|
inlineexplicitconstexprprivate |
Définition à la ligne 136 du fichier CooperativeWorkGroupLoopRange.h.
|
inline |
Groupe courant.
Définition à la ligne 147 du fichier CooperativeWorkGroupLoopRange.h.
|
friend |
Définition à la ligne 50 du fichier CooperativeWorkGroupLoopRange.h.