Arcane  v4.1.7.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
AcceleratorInitializer.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* AcceleratorInitializer.h (C) 2000-2026 */
9/* */
10/* Initialiseur pour un runtime-accélérator. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCCORE_ACCELERATOR_ACCELERATORINITIALIZER_H
13#define ARCCORE_ACCELERATOR_ACCELERATORINITIALIZER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arccore/accelerator/AcceleratorGlobal.h"
18
19#include <memory>
20
21/*---------------------------------------------------------------------------*/
22/*---------------------------------------------------------------------------*/
23
24namespace Arcane::Accelerator
25{
26class Initializer;
27
28/*---------------------------------------------------------------------------*/
29/*---------------------------------------------------------------------------*/
37class ARCCORE_ACCELERATOR_EXPORT AcceleratorInitializer
38{
39 public:
40
43
54 explicit AcceleratorInitializer(bool use_accelerator, Int32 nb_thread = 1);
55
57
58 public:
59
62 AcceleratorInitializer& operator=(const AcceleratorInitializer&) = delete;
64
65 public:
66
69
71 ITraceMng* traceMng() const;
72
73 private:
74
75 std::unique_ptr<Initializer> m_initializer;
76};
77
78/*---------------------------------------------------------------------------*/
79/*---------------------------------------------------------------------------*/
80
81} // namespace Arcane::Accelerator
82
83/*---------------------------------------------------------------------------*/
84/*---------------------------------------------------------------------------*/
85
86#endif
eExecutionPolicy executionPolicy() const
Politique d'exécution initialisée par défaut.
ITraceMng * traceMng() const
Gestionnaire de trace associé
AcceleratorInitializer()
Initialise un runtime séquentiel.
Classe interne pour initialiser le runtime accélérateur.
Definition Initializer.h:37
Interface du gestionnaire de traces.
Espace de nom pour l'utilisation des accélérateurs.
eExecutionPolicy
Politique d'exécution pour un Runner.
std::int32_t Int32
Type entier signé sur 32 bits.