Gestion d'une commande sur accélérateur. Plus de détails...
Graphe de collaboration de Arcane::Accelerator::RunCommand:Fonctions membres publiques | |
| RunCommand (RunCommand &&command)=delete | |
| RunCommand (const RunCommand &)=delete | |
| RunCommand & | operator= (const RunCommand &)=delete |
| RunCommand & | operator= (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 () |
| impl::RunQueueImpl * | _internalQueueImpl () const |
| Impl::NativeStream | _internalNativeStream () const |
| Int32 | _addSharedMemory (Int32 size) |
| Int32 | _sharedMemory () 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 |
| template<typename T, Int32 Extent> | |
| class | LocalMemory |
| 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. | |
| ARCCORE_COMMON_EXPORT 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.
Une commande est une opération qui sera exécutée sur l'accélérateur associé à l'instance de RunQueue utilisé lors de l'appel à makeCommand(). Sur un GPU, cela correspond à un noyau (kernel).
Pour plus d'informations, se reporter à la rubrique arcanedoc_parallel_accelerator_runcommand.
Définition à la ligne 45 du fichier arccore/src/common/arccore/common/accelerator/RunCommand.h.
| Arcane::Accelerator::RunCommand::~RunCommand | ( | ) |
Définition à la ligne 44 du fichier RunCommand.cc.
|
explicitprotected |
Définition à la ligne 34 du fichier RunCommand.cc.
Définition à la ligne 231 du fichier RunCommand.cc.
|
private |
Définition à la ligne 182 du fichier RunCommand.cc.
|
private |
Définition à la ligne 222 du fichier RunCommand.cc.
|
staticprivate |
Définition à la ligne 164 du fichier RunCommand.cc.
|
staticprivate |
Définition à la ligne 173 du fichier RunCommand.cc.
|
private |
Définition à la ligne 146 du fichier RunCommand.cc.
|
private |
Définition à la ligne 195 du fichier RunCommand.cc.
|
private |
Définition à la ligne 213 du fichier RunCommand.cc.
|
private |
Définition à la ligne 204 du fichier RunCommand.cc.
|
private |
Définition à la ligne 155 du fichier RunCommand.cc.
|
private |
Définition à la ligne 242 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 94 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 104 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 84 du fichier RunCommand.cc.
Référencé par operator<<.
Voici le graphe des appelants de cette fonction :| const String & Arcane::Accelerator::RunCommand::kernelName | ( | ) | const |
Nom du noyau.
Définition à la ligne 66 du fichier RunCommand.cc.
| Int32 Arcane::Accelerator::RunCommand::nbThreadPerBlock | ( | ) | const |
Définition à la ligne 75 du fichier RunCommand.cc.
| const ParallelLoopOptions & Arcane::Accelerator::RunCommand::parallelLoopOptions | ( | ) | const |
Configuration des boucles multi-thread.
Définition à la ligne 127 du fichier RunCommand.cc.
| void Arcane::Accelerator::RunCommand::setParallelLoopOptions | ( | const ParallelLoopOptions & | opt | ) |
Positionne la configuration des boucles multi-thread.
Définition à la ligne 118 du fichier RunCommand.cc.
| const TraceInfo & Arcane::Accelerator::RunCommand::traceInfo | ( | ) | const |
Informations pour les traces.
Définition à la ligne 57 du fichier RunCommand.cc.
|
friend |
Définition à la ligne 51 du fichier arccore/src/common/arccore/common/accelerator/RunCommand.h.
|
friend |
Créé une commande associée à la file run_queue.
Définition à la ligne 283 du fichier arccore/src/common/arccore/common/accelerator/RunQueue.h.
|
friend |
Créé une commande associée à la file run_queue.
Définition à la ligne 293 du fichier arccore/src/common/arccore/common/accelerator/RunQueue.h.
|
friend |
Affichage des informations de la commande.
Définition à la ligne 137 du fichier RunCommand.cc.
Références addTraceInfo(), et operator<<.
Référencé par operator<<.
|
friend |
Définition à la ligne 50 du fichier arccore/src/common/arccore/common/accelerator/RunCommand.h.
|
private |
Définition à la ligne 145 du fichier arccore/src/common/arccore/common/accelerator/RunCommand.h.