13#include "arcane/core/internal/ParallelMngInternal.h"
16#include "arcane/accelerator/core/RunQueueBuildInfo.h"
18#include "arcane/core/ParallelMngDispatcher.h"
20#include "arcane/utils/Convert.h"
21#include "arcane/utils/FatalErrorException.h"
22#include "arcane/utils/NotImplementedException.h"
39 if (
auto v = Convert::Type<Int32>::tryParseFromEnvironment(
"ARCANE_DISABLE_ACCELERATOR_AWARE_MESSAGE_PASSING",
true))
40 m_is_accelerator_aware_disabled = (v.value() != 0);
64bool ParallelMngInternal::
65isAcceleratorAware()
const
67 if (m_is_accelerator_aware_disabled)
71 if (!m_queue.isAcceleratorPolicy())
73 return m_parallel_mng->_isAcceleratorAware();
79void ParallelMngInternal::
80setDefaultRunner(
const Runner& runner)
82 if (!m_runner.isInitialized())
91 Accelerator::RunQueueBuildInfo build_info(-5);
92 m_queue = makeQueue(m_runner, build_info);
93 m_queue.setAsync(
true);
100createSubParallelMngRef(
Int32 color,
Int32 key)
102 return m_parallel_mng->_createSubParallelMngRef(color, key);
109createMachineMemoryWindowBase([[maybe_unused]]
Int64 sizeof_segment,
110 [[maybe_unused]]
Int32 sizeof_type)
119createDynamicMachineMemoryWindowBase([[maybe_unused]]
Int64 sizeof_segment,
120 [[maybe_unused]]
Int32 sizeof_type)
128IMemoryAllocator* ParallelMngInternal::dynamicMachineMemoryWindowMemoryAllocator()
#define ARCANE_THROW(exception_class,...)
Macro pour envoyer une exception avec formattage.
#define ARCANE_FATAL(...)
Macro envoyant une exception FatalErrorException.
File d'exécution pour un accélérateur.
Gestionnaire d'exécution pour accélérateur.
Interface d'un allocateur pour la mémoire.
Exception lorsqu'une fonction n'est pas implémentée.
Redirige la gestion des messages des sous-domaines suivant le type de l'argument.
Référence à une instance.
Espace de nom pour l'utilisation des accélérateurs.
RunQueue makeQueue(const Runner &runner)
Créé une file associée à runner.
eExecutionPolicy
Politique d'exécution pour un Runner.
@ Sequential
Politique d'exécution séquentielle.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
std::int64_t Int64
Type entier signé sur 64 bits.
std::int32_t Int32
Type entier signé sur 32 bits.