Fonctions membres publiques | |
CudaRunQueueStream (impl::IRunnerRuntime *runtime, const RunQueueBuildInfo &bi) | |
void | notifyBeginLaunchKernel (impl::RunCommandImpl &c) override |
Notification avant le lancement de la commande. | |
void | notifyEndLaunchKernel (impl::RunCommandImpl &) override |
Notification de fin de lancement de la commande. | |
void | barrier () override |
Bloque jusqu'à ce que toutes les actions associées à cette file soient terminées. | |
bool | _barrierNoException () override |
Barrière sans exception. Retourne true en cas d'erreur. | |
void | copyMemory (const MemoryCopyArgs &args) override |
Effectue une copie entre deux zones mémoire. | |
void | prefetchMemory (const MemoryPrefetchArgs &args) override |
Effectue un pré-chargement d'une zone mémoire. | |
void * | _internalImpl () override |
Pointeur sur la structure interne dépendante de l'implémentation. | |
cudaStream_t | trueStream () const |
Fonctions membres publiques hérités de Arcane::Accelerator::impl::IRunQueueStream | |
virtual void | _setSyclLastCommandEvent (void *sycl_event_ptr) |
Pour SYCL, positionne l'évènement associé à la dernière commande exécutée. | |
Attributs privés | |
impl::IRunnerRuntime * | m_runtime |
cudaStream_t | m_cuda_stream |
Définition à la ligne 98 du fichier CudaAcceleratorRuntime.cc.
|
inline |
Définition à la ligne 103 du fichier CudaAcceleratorRuntime.cc.
|
inlineoverride |
Définition à la ligne 113 du fichier CudaAcceleratorRuntime.cc.
|
inlineoverridevirtual |
Barrière sans exception. Retourne true en cas d'erreur.
Implémente Arcane::Accelerator::impl::IRunQueueStream.
Définition à la ligne 144 du fichier CudaAcceleratorRuntime.cc.
|
inlineoverridevirtual |
Pointeur sur la structure interne dépendante de l'implémentation.
Implémente Arcane::Accelerator::impl::IRunQueueStream.
Définition à la ligne 172 du fichier CudaAcceleratorRuntime.cc.
|
inlineoverridevirtual |
Bloque jusqu'à ce que toutes les actions associées à cette file soient terminées.
Cela comprend les commandes (RunCommandImpl) et les autres actions telles que les copies mémoire asynchrones.
Implémente Arcane::Accelerator::impl::IRunQueueStream.
Définition à la ligne 138 du fichier CudaAcceleratorRuntime.cc.
Référencé par copyMemory(), et prefetchMemory().
|
inlineoverridevirtual |
Effectue une copie entre deux zones mémoire.
Implémente Arcane::Accelerator::impl::IRunQueueStream.
Définition à la ligne 148 du fichier CudaAcceleratorRuntime.cc.
Références barrier().
|
inlineoverridevirtual |
Notification avant le lancement de la commande.
Implémente Arcane::Accelerator::impl::IRunQueueStream.
Définition à la ligne 120 du fichier CudaAcceleratorRuntime.cc.
|
inlineoverridevirtual |
Notification de fin de lancement de la commande.
En mode asynchrone, la commande peut continuer à s'exécuter en tâche de fond.
Implémente Arcane::Accelerator::impl::IRunQueueStream.
Définition à la ligne 131 du fichier CudaAcceleratorRuntime.cc.
|
inlineoverridevirtual |
Effectue un pré-chargement d'une zone mémoire.
Implémente Arcane::Accelerator::impl::IRunQueueStream.
Définition à la ligne 157 du fichier CudaAcceleratorRuntime.cc.
Références Arcane::Accelerator::DeviceId::asInt32(), barrier(), et Arcane::Accelerator::DeviceId::isHost().
|
inline |
Définition à la ligne 179 du fichier CudaAcceleratorRuntime.cc.
|
private |
Définition à la ligne 187 du fichier CudaAcceleratorRuntime.cc.
|
private |
Définition à la ligne 186 du fichier CudaAcceleratorRuntime.cc.