Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::Accelerator::AsyncRunQueuePool

Collection de file d'exécution asynchrone avec priorité sur accélérateur. Plus de détails...

#include <arcane/accelerator/AsyncRunQueuePool.h>

+ Graphe de collaboration de Arcane::Accelerator::AsyncRunQueuePool:

Fonctions membres publiques

 AsyncRunQueuePool (const AsyncRunQueuePool &)=delete
 
 AsyncRunQueuePool (AsyncRunQueuePool &&)=delete
 
AsyncRunQueuePooloperator= (const AsyncRunQueuePool &)=delete
 
AsyncRunQueuePooloperator= (AsyncRunQueuePool &&)=delete
 
 AsyncRunQueuePool (Runner &runner, Int32 pool_size=POOL_MAX_SIZE, eRunQueuePriority queues_priority=eRunQueuePriority::Default)
 
const RunQueueoperator[] (Int32 i) const
 Pour récupérer la i % poolSize() ième queue d'exécution.
 
RunQueueoperator[] (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
 

Description détaillée

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

Avertissement
API en cours de définition.
Note
Courtesy of D.Dureau from Pattern4GPU

Définition à la ligne 42 du fichier AsyncRunQueuePool.h.

Documentation des constructeurs et destructeur

◆ AsyncRunQueuePool()

Arcane::Accelerator::AsyncRunQueuePool::AsyncRunQueuePool ( Runner runner,
Int32  pool_size = POOL_MAX_SIZE,
eRunQueuePriority  queues_priority = eRunQueuePriority::Default 
)
inlineexplicit

Définition à la ligne 56 du fichier AsyncRunQueuePool.h.

◆ ~AsyncRunQueuePool()

Arcane::Accelerator::AsyncRunQueuePool::~AsyncRunQueuePool ( )
inline

Définition à la ligne 72 du fichier AsyncRunQueuePool.h.

Documentation des fonctions membres

◆ operator[]() [1/2]

RunQueue * Arcane::Accelerator::AsyncRunQueuePool::operator[] ( Int32  i)
inline

Pour récupérer la i % poolSize() ième queue d'exécution.

Définition à la ligne 85 du fichier AsyncRunQueuePool.h.

◆ operator[]() [2/2]

const RunQueue & Arcane::Accelerator::AsyncRunQueuePool::operator[] ( Int32  i) const
inline

Pour récupérer la i % poolSize() ième queue d'exécution.

Définition à la ligne 79 du fichier AsyncRunQueuePool.h.

◆ poolSize()

Int32 Arcane::Accelerator::AsyncRunQueuePool::poolSize ( ) const
inline

Taille de la collection.

Définition à la ligne 97 du fichier AsyncRunQueuePool.h.

◆ waitAll()

void Arcane::Accelerator::AsyncRunQueuePool::waitAll ( ) const
inline

Force l'attente de toutes les RunQueue.

Définition à la ligne 91 du fichier AsyncRunQueuePool.h.

Documentation des données membres

◆ m_pool

UniqueArray<Ref<RunQueue> > Arcane::Accelerator::AsyncRunQueuePool::m_pool
private

Définition à la ligne 103 du fichier AsyncRunQueuePool.h.

◆ m_pool_size

Int32 Arcane::Accelerator::AsyncRunQueuePool::m_pool_size
private

Définition à la ligne 104 du fichier AsyncRunQueuePool.h.

◆ POOL_MAX_SIZE

constexpr Int32 Arcane::Accelerator::AsyncRunQueuePool::POOL_MAX_SIZE = 32
staticconstexpr

au plus 32 queues (32 = nb de kernels max exécutables simultanément)

Définition à la ligne 47 du fichier AsyncRunQueuePool.h.


La documentation de cette classe a été générée à partir du fichier suivant :