Gestion d'une commande sur accélérateur. Plus de détails...
#include <arcane/accelerator/core/RunCommand.h>
Fonctions membres publiques | |
RunCommand (const RunCommand &)=delete | |
RunCommand & | operator= (const RunCommand &)=delete |
RunCommand & | addTraceInfo (const TraceInfo &ti) |
Positionne le informations de trace. | |
RunCommand & | addKernelName (const String &v) |
Positionne le nom du noyau. | |
RunCommand & | addNbThreadPerBlock (Int32 v) |
Positionne le nombre de thread par bloc pour les accélérateurs. | |
const TraceInfo & | traceInfo () const |
Informations pour les traces. | |
const String & | kernelName () const |
Nom du noyau. | |
Int32 | nbThreadPerBlock () const |
void | setParallelLoopOptions (const ParallelLoopOptions &opt) |
Positionne la configuration des boucles multi-thread. | |
const ParallelLoopOptions & | parallelLoopOptions () const |
Configuration des boucles multi-thread. | |
Fonctions membres protégées | |
RunCommand (const RunQueue &run_queue) | |
Fonctions membres privées | |
void | _internalNotifyBeginLaunchKernel () |
void | _internalNotifyEndLaunchKernel () |
void | _internalNotifyBeginLaunchKernelSyclEvent (void *sycl_event_ptr) |
ForLoopOneExecStat * | _internalCommandExecStat () |
RunQueue | _internalQueue () const |
impl::RunQueueImpl * | _internalQueueImpl () const |
void | _allocateReduceMemory (Int32 nb_grid) |
Fonctions membres privées statiques | |
static impl::RunCommandImpl * | _internalCreateImpl (impl::RunQueueImpl *queue) |
static void | _internalDestroyImpl (impl::RunCommandImpl *p) |
Attributs privés | |
impl::RunCommandImpl * | m_p |
Amis | |
class | ViewBuildInfo |
impl::IReduceMemoryImpl * | impl::internalGetOrCreateReduceMemoryImpl (RunCommand *command) |
RunCommand | makeCommand (const RunQueue &run_queue) |
Créé une commande associée à la file run_queue. | |
RunCommand | makeCommand (const RunQueue *run_queue) |
Créé une commande associée à la file run_queue. | |
RunCommand & | operator<< (RunCommand &command, const TraceInfo &trace_info) |
Affichage des informations de la commande. | |
Gestion d'une commande sur accélérateur.
Une commande est associée à une file d'exécution (RunQueue) et sa durée de vie ne doit pas excéder celle de cette dernière.
Définition à la ligne 40 du fichier core/RunCommand.h.
Arcane::Accelerator::RunCommand::~RunCommand | ( | ) |
Définition à la ligne 39 du fichier RunCommand.cc.
|
explicitprotected |
Définition à la ligne 30 du fichier RunCommand.cc.
|
private |
Définition à la ligne 175 du fichier RunCommand.cc.
|
private |
Définition à la ligne 215 du fichier RunCommand.cc.
|
staticprivate |
Définition à la ligne 157 du fichier RunCommand.cc.
|
staticprivate |
Définition à la ligne 166 du fichier RunCommand.cc.
|
private |
Définition à la ligne 188 du fichier RunCommand.cc.
|
private |
Définition à la ligne 206 du fichier RunCommand.cc.
|
private |
Définition à la ligne 197 du fichier RunCommand.cc.
|
private |
Définition à la ligne 139 du fichier RunCommand.cc.
|
private |
Définition à la ligne 148 du fichier RunCommand.cc.
RunCommand & Arcane::Accelerator::RunCommand::addKernelName | ( | const String & | v | ) |
Positionne le nom du noyau.
Ce nom est utilisé pour les traces ou pour le débug.
Définition à la ligne 87 du fichier RunCommand.cc.
RunCommand & Arcane::Accelerator::RunCommand::addNbThreadPerBlock | ( | Int32 | v | ) |
Positionne le nombre de thread par bloc pour les accélérateurs.
Si la valeur v est nulle, le choix par défaut est utilisé. Si la valeur v est positive, sa valeur minimale valide dépend de l'accélérateur. En général c'est au moins 32.
Définition à la ligne 97 du fichier RunCommand.cc.
RunCommand & Arcane::Accelerator::RunCommand::addTraceInfo | ( | const TraceInfo & | ti | ) |
Positionne le informations de trace.
Ces informations sont utilisées pour les traces ou pour le débug. Les macros RUNCOMMAND_LOOP ou RUNCOMMAND_ENUMERATE appellent automatiquement cette méthode.
Définition à la ligne 77 du fichier RunCommand.cc.
const String & Arcane::Accelerator::RunCommand::kernelName | ( | ) | const |
Nom du noyau.
Définition à la ligne 59 du fichier RunCommand.cc.
Int32 Arcane::Accelerator::RunCommand::nbThreadPerBlock | ( | ) | const |
Définition à la ligne 68 du fichier RunCommand.cc.
const ParallelLoopOptions & Arcane::Accelerator::RunCommand::parallelLoopOptions | ( | ) | const |
Configuration des boucles multi-thread.
Définition à la ligne 120 du fichier RunCommand.cc.
void Arcane::Accelerator::RunCommand::setParallelLoopOptions | ( | const ParallelLoopOptions & | opt | ) |
Positionne la configuration des boucles multi-thread.
Définition à la ligne 111 du fichier RunCommand.cc.
const TraceInfo & Arcane::Accelerator::RunCommand::traceInfo | ( | ) | const |
Informations pour les traces.
Définition à la ligne 50 du fichier RunCommand.cc.
|
friend |
Créé une commande associée à la file run_queue.
Définition à la ligne 248 du fichier core/RunQueue.h.
|
friend |
Créé une commande associée à la file run_queue.
Définition à la ligne 258 du fichier core/RunQueue.h.
|
friend |
Affichage des informations de la commande.
Définition à la ligne 130 du fichier RunCommand.cc.
|
friend |
Définition à la ligne 45 du fichier core/RunCommand.h.
|
private |
Définition à la ligne 136 du fichier core/RunCommand.h.