12#ifndef ARCANE_ACCELERATOR_ACCELERATORGLOBAL_H
13#define ARCANE_ACCELERATOR_ACCELERATORGLOBAL_H
27#ifdef ARCANE_COMPONENT_arcane_accelerator
28#define ARCANE_ACCELERATOR_EXPORT ARCANE_EXPORT
30#define ARCANE_ACCELERATOR_EXPORT ARCANE_IMPORT
40 class CudaHipKernelRemainingArgsHelper;
41 class SyclKernelRemainingArgsHelper;
51 :
public std::false_type
59template <
typename T, Int32 Extent = DynExtent>
class LocalMemory;
82extern "C++" ARCANE_ACCELERATOR_EXPORT
void
94namespace Arcane::Accelerator::impl
100extern "C++" ARCANE_ACCELERATOR_EXPORT String
112#define ARCANE_FATAL_NO_HIP_COMPILATION() \
113 ARCANE_FATAL(Arcane::Accelerator::impl::getBadPolicyMessage(Arcane::Accelerator::eExecutionPolicy::HIP));
116#define ARCANE_FATAL_NO_CUDA_COMPILATION() \
117 ARCANE_FATAL(Arcane::Accelerator::impl::getBadPolicyMessage(Arcane::Accelerator::eExecutionPolicy::CUDA));
120#define ARCANE_FATAL_NO_SYCL_COMPILATION() \
121 ARCANE_FATAL(Arcane::Accelerator::impl::getBadPolicyMessage(Arcane::Accelerator::eExecutionPolicy::SYCL));
Déclarations des types utilisés dans Arcane.
Informations pour l'initialisation des accélérateurs.
Template pour savoir si un type utilisé comme boucle dans les kernels nécessite toujours sycl::nb_ite...
Mémoire locale (shared) à une RunCommand.
Gestionnaire d'exécution pour accélérateur.
Interface du gestionnaire de traces.
Espace de nom pour l'utilisation des accélérateurs.
void initializeRunner(Runner &runner, ITraceMng *tm, const AcceleratorRuntimeInitialisationInfo &acc_info)
Initialise runner en fonction de la valeur de acc_info.
eAtomicOperation
Type d'opération atomique supportée.
eExecutionPolicy
Politique d'exécution pour un Runner.