Arcane  v4.1.1.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::Accelerator::RunCommand

Gestion d'une commande sur accélérateur. Plus de détails...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/common/arccore/common/accelerator/RunCommand.h>

+ Graphe de collaboration de Arcane::Accelerator::RunCommand:

Fonctions membres publiques

 RunCommand (RunCommand &&command)=delete
 
 RunCommand (const RunCommand &)=delete
 
RunCommandoperator= (const RunCommand &)=delete
 
RunCommandoperator= (RunCommand &&)=delete
 
RunCommandaddTraceInfo (const TraceInfo &ti)
 Positionne le informations de trace.
 
RunCommandaddKernelName (const String &v)
 Positionne le nom du noyau.
 
RunCommandaddNbThreadPerBlock (Int32 v)
 Positionne le nombre de thread par bloc pour les accélérateurs.
 
const TraceInfotraceInfo () const
 Informations pour les traces.
 
const StringkernelName () const
 Nom du noyau.
 
Int32 nbThreadPerBlock () const
 
void setParallelLoopOptions (const ParallelLoopOptions &opt)
 Positionne la configuration des boucles multi-thread.
 
const ParallelLoopOptionsparallelLoopOptions () 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::RunCommandImplm_p
 

Amis

class ViewBuildInfo
 
template<typename T, Int32 Extent>
class LocalMemory
 
impl::IReduceMemoryImplimpl::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 RunCommandoperator<< (RunCommand &command, const TraceInfo &trace_info)
 Affichage des informations de la commande.
 

Description détaillée

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.

Documentation des constructeurs et destructeur

◆ ~RunCommand()

Arcane::Accelerator::RunCommand::~RunCommand ( )

Définition à la ligne 44 du fichier RunCommand.cc.

◆ RunCommand()

Arcane::Accelerator::RunCommand::RunCommand ( const RunQueue & run_queue)
explicitprotected

Définition à la ligne 34 du fichier RunCommand.cc.

Documentation des fonctions membres

◆ _addSharedMemory()

Int32 Arcane::Accelerator::RunCommand::_addSharedMemory ( Int32 size)
private

Définition à la ligne 231 du fichier RunCommand.cc.

◆ _allocateReduceMemory()

void Arcane::Accelerator::RunCommand::_allocateReduceMemory ( Int32 nb_grid)
private

Définition à la ligne 182 du fichier RunCommand.cc.

◆ _internalCommandExecStat()

ForLoopOneExecStat * Arcane::Accelerator::RunCommand::_internalCommandExecStat ( )
private

Définition à la ligne 222 du fichier RunCommand.cc.

◆ _internalCreateImpl()

impl::RunCommandImpl * Arcane::Accelerator::RunCommand::_internalCreateImpl ( impl::RunQueueImpl * queue)
staticprivate

Définition à la ligne 164 du fichier RunCommand.cc.

◆ _internalDestroyImpl()

void Arcane::Accelerator::RunCommand::_internalDestroyImpl ( impl::RunCommandImpl * p)
staticprivate

Définition à la ligne 173 du fichier RunCommand.cc.

◆ _internalNativeStream()

Impl::NativeStream Arcane::Accelerator::RunCommand::_internalNativeStream ( ) const
private

Définition à la ligne 146 du fichier RunCommand.cc.

◆ _internalNotifyBeginLaunchKernel()

void Arcane::Accelerator::RunCommand::_internalNotifyBeginLaunchKernel ( )
private

Définition à la ligne 195 du fichier RunCommand.cc.

◆ _internalNotifyBeginLaunchKernelSyclEvent()

void Arcane::Accelerator::RunCommand::_internalNotifyBeginLaunchKernelSyclEvent ( void * sycl_event_ptr)
private

Définition à la ligne 213 du fichier RunCommand.cc.

◆ _internalNotifyEndLaunchKernel()

void Arcane::Accelerator::RunCommand::_internalNotifyEndLaunchKernel ( )
private

Définition à la ligne 204 du fichier RunCommand.cc.

◆ _internalQueueImpl()

impl::RunQueueImpl * Arcane::Accelerator::RunCommand::_internalQueueImpl ( ) const
private

Définition à la ligne 155 du fichier RunCommand.cc.

◆ _sharedMemory()

Int32 Arcane::Accelerator::RunCommand::_sharedMemory ( ) const
private

Définition à la ligne 242 du fichier RunCommand.cc.

◆ addKernelName()

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.

◆ addNbThreadPerBlock()

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.

◆ addTraceInfo()

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 :

◆ kernelName()

const String & Arcane::Accelerator::RunCommand::kernelName ( ) const

Nom du noyau.

Définition à la ligne 66 du fichier RunCommand.cc.

◆ nbThreadPerBlock()

Int32 Arcane::Accelerator::RunCommand::nbThreadPerBlock ( ) const

Définition à la ligne 75 du fichier RunCommand.cc.

◆ parallelLoopOptions()

const ParallelLoopOptions & Arcane::Accelerator::RunCommand::parallelLoopOptions ( ) const

Configuration des boucles multi-thread.

Définition à la ligne 127 du fichier RunCommand.cc.

◆ setParallelLoopOptions()

void Arcane::Accelerator::RunCommand::setParallelLoopOptions ( const ParallelLoopOptions & opt)

Positionne la configuration des boucles multi-thread.

Définition à la ligne 118 du fichier RunCommand.cc.

◆ traceInfo()

const TraceInfo & Arcane::Accelerator::RunCommand::traceInfo ( ) const

Informations pour les traces.

Définition à la ligne 57 du fichier RunCommand.cc.

Documentation des fonctions amies et associées

◆ LocalMemory

template<typename T, Int32 Extent>
friend class LocalMemory
friend

◆ makeCommand [1/2]

RunCommand makeCommand ( const RunQueue & run_queue)
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.

◆ makeCommand [2/2]

RunCommand makeCommand ( const RunQueue * run_queue)
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.

◆ operator<<

ARCCORE_COMMON_EXPORT RunCommand & operator<< ( RunCommand & command,
const TraceInfo & trace_info )
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<<.

◆ ViewBuildInfo

friend class ViewBuildInfo
friend

Documentation des données membres

◆ m_p

impl::RunCommandImpl* Arcane::Accelerator::RunCommand::m_p
private

La documentation de cette classe a été générée à partir des fichiers suivants :