14#include "arccore/accelerator/internal/Initializer.h"
16#include "arccore/base/String.h"
17#include "arccore/base/PlatformUtils.h"
19#include "arccore/common/accelerator/internal/AcceleratorCoreGlobalInternal.h"
20#include "arccore/common/accelerator/internal/RuntimeLoader.h"
21#include "arccore/common/accelerator/AcceleratorRuntimeInitialisationInfo.h"
34Initializer(
bool use_accelerator,
Int32 max_allowed_thread)
36 std::cout <<
"INIT_ACCELERATOR use?=" << use_accelerator <<
"\n";
37 if (use_accelerator) {
39 String default_runtime_name;
40#if defined(ARCCORE_HAS_CUDA)
41 default_runtime_name =
"cuda";
42#elif defined(ARCCORE_HAS_HIP)
43 default_runtime_name =
"hip";
44#elif defined(ARCCORE_HAS_SYCL)
45 default_runtime_name =
"sycl";
50 if (!dll_full_path.null())
52 if (library_path.null())
55 std::cout <<
"INIT_ACCELERATOR default_runtime=" << default_runtime_name <<
" lib_path=" << library_path <<
"\n";
56 bool has_accelerator =
false;
57 init_info.setIsUsingAcceleratorRuntime(
true);
58 int r = Impl::RuntimeLoader::loadRuntime(init_info, default_runtime_name, library_path, has_accelerator);
60 if (Impl::isUsingCUDARuntime())
62 else if (Impl::isUsingHIPRuntime())
64 else if (Impl::isUsingHIPRuntime())
Informations pour l'initialisation des accélérateurs.
Espace de nom pour l'utilisation des accélérateurs.
@ SYCL
Politique d'exécution utilisant l'environnement SYCL.
@ HIP
Politique d'exécution utilisant l'environnement HIP.
@ CUDA
Politique d'exécution utilisant l'environnement CUDA.
std::int32_t Int32
Type entier signé sur 32 bits.