File d'exécution pour accélérateur.
Plus de détails...
#include <arcane/accelerator/core/internal/RunQueueImpl.h>
File d'exécution pour accélérateur.
Cette classe gère l'implémentation d'une RunQueue. La description des méthodes se trouve dans RunQueue.
Définition à la ligne 41 du fichier core/internal/RunQueueImpl.h.
◆ RunQueueImpl()
◆ ~RunQueueImpl()
Arcane::Accelerator::impl::RunQueueImpl::~RunQueueImpl |
( |
| ) |
|
|
private |
◆ _addRunningCommand()
void Arcane::Accelerator::impl::RunQueueImpl::_addRunningCommand |
( |
RunCommandImpl * | p | ) |
|
|
private |
◆ _checkPutCommandInPoolNoLock()
void Arcane::Accelerator::impl::RunQueueImpl::_checkPutCommandInPoolNoLock |
( |
RunCommandImpl * | p | ) |
|
|
private |
◆ _destroy()
void Arcane::Accelerator::impl::RunQueueImpl::_destroy |
( |
RunQueueImpl * | q | ) |
|
|
staticprivate |
◆ _freeCommandsInPool()
void Arcane::Accelerator::impl::RunQueueImpl::_freeCommandsInPool |
( |
| ) |
|
|
private |
◆ _internalBarrier()
void Arcane::Accelerator::impl::RunQueueImpl::_internalBarrier |
( |
| ) |
|
◆ _internalCreateOrGetRunCommandImpl()
RunCommandImpl * Arcane::Accelerator::impl::RunQueueImpl::_internalCreateOrGetRunCommandImpl |
( |
| ) |
|
|
private |
◆ _internalFreeRunningCommands()
void Arcane::Accelerator::impl::RunQueueImpl::_internalFreeRunningCommands |
( |
| ) |
|
|
private |
◆ _internalRuntime()
IRunnerRuntime * Arcane::Accelerator::impl::RunQueueImpl::_internalRuntime |
( |
| ) |
const |
|
inline |
◆ _internalStream()
IRunQueueStream * Arcane::Accelerator::impl::RunQueueImpl::_internalStream |
( |
| ) |
const |
|
inline |
◆ _isInPool()
bool Arcane::Accelerator::impl::RunQueueImpl::_isInPool |
( |
| ) |
const |
|
inlineprivate |
◆ _putInCommandPool()
void Arcane::Accelerator::impl::RunQueueImpl::_putInCommandPool |
( |
RunCommandImpl * | p | ) |
|
|
private |
◆ _release()
void Arcane::Accelerator::impl::RunQueueImpl::_release |
( |
| ) |
|
|
private |
◆ _reset()
Réinitialise l'implémentation.
Cette méthode est appelée lorsqu'on va initialiser une RunQueue avec cette instance. Il faut dans ce cas réinitialiser les valeurs de l'instance qui dépendent de l'état actuel.
Définition à la ligne 364 du fichier RunQueueImpl.cc.
Références m_is_async.
◆ _setDefaultMemoryRessource()
void Arcane::Accelerator::impl::RunQueueImpl::_setDefaultMemoryRessource |
( |
| ) |
|
|
private |
◆ addRef()
void Arcane::Accelerator::impl::RunQueueImpl::addRef |
( |
| ) |
|
|
inline |
◆ allocationOptions()
◆ copyMemory()
void Arcane::Accelerator::impl::RunQueueImpl::copyMemory |
( |
const MemoryCopyArgs & | args | ) |
const |
◆ create() [1/2]
◆ create() [2/2]
◆ dumpStats()
void Arcane::Accelerator::impl::RunQueueImpl::dumpStats |
( |
std::ostream & | ostr | ) |
const |
◆ executionPolicy()
eExecutionPolicy Arcane::Accelerator::impl::RunQueueImpl::executionPolicy |
( |
| ) |
const |
|
inline |
◆ isAsync()
bool Arcane::Accelerator::impl::RunQueueImpl::isAsync |
( |
| ) |
const |
|
inline |
◆ isAutoPrefetchCommand()
bool Arcane::Accelerator::impl::RunQueueImpl::isAutoPrefetchCommand |
( |
| ) |
const |
◆ isConcurrentCommandCreation()
bool Arcane::Accelerator::impl::RunQueueImpl::isConcurrentCommandCreation |
( |
| ) |
const |
|
inline |
◆ prefetchMemory()
void Arcane::Accelerator::impl::RunQueueImpl::prefetchMemory |
( |
const MemoryPrefetchArgs & | args | ) |
const |
◆ recordEvent()
void Arcane::Accelerator::impl::RunQueueImpl::recordEvent |
( |
RunQueueEvent & | event | ) |
|
◆ removeRef()
void Arcane::Accelerator::impl::RunQueueImpl::removeRef |
( |
| ) |
|
|
inline |
◆ runner()
RunnerImpl * Arcane::Accelerator::impl::RunQueueImpl::runner |
( |
| ) |
const |
|
inline |
◆ setConcurrentCommandCreation()
void Arcane::Accelerator::impl::RunQueueImpl::setConcurrentCommandCreation |
( |
bool | v | ) |
|
◆ waitEvent()
void Arcane::Accelerator::impl::RunQueueImpl::waitEvent |
( |
RunQueueEvent & | event | ) |
|
◆ Arcane::Accelerator::Runner
◆ Arcane::Accelerator::RunQueue
◆ RunCommandImpl
◆ RunnerImpl
◆ RunQueueImplStack
◆ m_active_run_command_list
◆ m_execution_policy
◆ m_id
Int32 Arcane::Accelerator::impl::RunQueueImpl::m_id = 0 |
|
private |
◆ m_is_async
bool Arcane::Accelerator::impl::RunQueueImpl::m_is_async = false |
|
private |
◆ m_is_in_pool
bool Arcane::Accelerator::impl::RunQueueImpl::m_is_in_pool = false |
|
private |
◆ m_memory_ressource
eMemoryRessource Arcane::Accelerator::impl::RunQueueImpl::m_memory_ressource = eMemoryRessource::Unknown |
|
private |
◆ m_nb_ref
std::atomic<Int32> Arcane::Accelerator::impl::RunQueueImpl::m_nb_ref = 0 |
|
private |
◆ m_pool_mutex
std::unique_ptr<std::mutex> Arcane::Accelerator::impl::RunQueueImpl::m_pool_mutex |
|
private |
◆ m_queue_stream
IRunQueueStream* Arcane::Accelerator::impl::RunQueueImpl::m_queue_stream = nullptr |
|
private |
◆ m_run_command_pool
std::stack<RunCommandImpl*> Arcane::Accelerator::impl::RunQueueImpl::m_run_command_pool |
|
private |
◆ m_runner_impl
RunnerImpl* Arcane::Accelerator::impl::RunQueueImpl::m_runner_impl = nullptr |
|
private |
◆ m_runtime
IRunnerRuntime* Arcane::Accelerator::impl::RunQueueImpl::m_runtime = nullptr |
|
private |
◆ m_use_pool_mutex
bool Arcane::Accelerator::impl::RunQueueImpl::m_use_pool_mutex = false |
|
private |
La documentation de cette classe a été générée à partir des fichiers suivants :