Collection de file d'exécution asynchrone avec priorité sur accélérateur. Plus de détails...
#include <arcane/accelerator/AsyncRunQueuePool.h>
Fonctions membres publiques | |
AsyncRunQueuePool (const AsyncRunQueuePool &)=delete | |
AsyncRunQueuePool (AsyncRunQueuePool &&)=delete | |
AsyncRunQueuePool & | operator= (const AsyncRunQueuePool &)=delete |
AsyncRunQueuePool & | operator= (AsyncRunQueuePool &&)=delete |
AsyncRunQueuePool (Runner &runner, Int32 pool_size=POOL_MAX_SIZE, eRunQueuePriority queues_priority=eRunQueuePriority::Default) | |
const RunQueue & | operator[] (Int32 i) const |
Pour récupérer la i % poolSize() ième queue d'exécution. | |
RunQueue * | operator[] (Int32 i) |
Pour récupérer la i % poolSize() ième queue d'exécution. | |
void | waitAll () const |
Force l'attente de toutes les RunQueue. | |
Int32 | poolSize () const |
Taille de la collection. | |
Attributs publics statiques | |
static constexpr Int32 | POOL_MAX_SIZE = 32 |
au plus 32 queues (32 = nb de kernels max exécutables simultanément) | |
Attributs privés | |
UniqueArray< Ref< RunQueue > > | m_pool |
Int32 | m_pool_size |
Collection de file d'exécution asynchrone avec priorité sur accélérateur.
La taille de la collection est uniquement paramétrable à sa création et il existe une taille maximale de POOL_MAX_SIZE. Si la taille demandée est supérieure à celle-ci, la taille réelle de la collection sera de POOL_MAX_SIZE. L'opérateur d'accès aux éléments renvoit le (i % poolSize()) ème
Définition à la ligne 42 du fichier AsyncRunQueuePool.h.
|
inlineexplicit |
Définition à la ligne 56 du fichier AsyncRunQueuePool.h.
|
inline |
Définition à la ligne 72 du fichier AsyncRunQueuePool.h.
|
inline |
Pour récupérer la i % poolSize() ième queue d'exécution.
Définition à la ligne 85 du fichier AsyncRunQueuePool.h.
|
inline |
Pour récupérer la i % poolSize() ième queue d'exécution.
Définition à la ligne 79 du fichier AsyncRunQueuePool.h.
|
inline |
Taille de la collection.
Définition à la ligne 97 du fichier AsyncRunQueuePool.h.
|
inline |
Force l'attente de toutes les RunQueue.
Définition à la ligne 91 du fichier AsyncRunQueuePool.h.
|
private |
Définition à la ligne 103 du fichier AsyncRunQueuePool.h.
|
private |
Définition à la ligne 104 du fichier AsyncRunQueuePool.h.
|
staticconstexpr |
au plus 32 queues (32 = nb de kernels max exécutables simultanément)
Définition à la ligne 47 du fichier AsyncRunQueuePool.h.