14#include "arcane/accelerator/core/RunCommand.h"
16#include "arcane/accelerator/core/RunQueue.h"
17#include "arcane/accelerator/core/internal/RunQueueImpl.h"
18#include "arcane/accelerator/core/internal/ReduceMemoryImpl.h"
19#include "arcane/accelerator/core/internal/RunCommandImpl.h"
31RunCommand(
const RunQueue& run_queue)
32: m_p(run_queue._getCommandImpl())
53 return m_p->traceInfo();
62 return m_p->kernelName();
69nbThreadPerBlock()
const
71 return m_p->m_nb_thread_per_block;
80 m_p->m_trace_info = ti;
88addKernelName(
const String& v)
90 m_p->m_kernel_name = v;
98addNbThreadPerBlock(Int32 v)
104 m_p->m_nb_thread_per_block = v;
114 m_p->m_parallel_loop_options = opt;
121parallelLoopOptions()
const
123 return m_p->m_parallel_loop_options;
129extern "C++" ARCANE_ACCELERATOR_CORE_EXPORT
140_internalQueue()
const
148impl::RunQueueImpl* RunCommand::
149_internalQueueImpl()
const
157impl::RunCommandImpl* RunCommand::
158_internalCreateImpl(impl::RunQueueImpl* queue)
160 return new impl::RunCommandImpl(queue);
167_internalDestroyImpl(impl::RunCommandImpl* p)
176_allocateReduceMemory(Int32 nb_grid)
178 auto& mem_list = m_p->m_active_reduce_memory_list;
179 if (!mem_list.empty()) {
180 for (
auto& x : mem_list)
181 x->setGridSizeAndAllocate(nb_grid);
189_internalNotifyBeginLaunchKernel()
191 m_p->notifyBeginLaunchKernel();
198_internalNotifyEndLaunchKernel()
200 m_p->notifyEndLaunchKernel();
207_internalNotifyBeginLaunchKernelSyclEvent(
void* sycl_event_ptr)
209 m_p->notifyLaunchKernelSyclEvent(sycl_event_ptr);
215ForLoopOneExecStat* RunCommand::
216_internalCommandExecStat()
218 return m_p->m_loop_one_exec_stat_ptr;
Gestion d'une commande sur accélérateur.
RunCommand & addTraceInfo(const TraceInfo &ti)
Positionne le informations de trace.
File d'exécution pour un accélérateur.
Options d'exécution d'une boucle parallèle en multi-thread.
Chaîne de caractères unicode.
Espace de nom pour l'utilisation des accélérateurs.
std::ostream & operator<<(std::ostream &ostr, eItemKind item_kind)
Opérateur de sortie sur un flot.