8#include <gtest/gtest.h>
10#include "arcane/accelerator/core/Runner.h"
11#include "arcane/accelerator/core/RunQueue.h"
13#include "arcane/accelerator/GenericPartitioner.h"
20extern "C++" void arcaneRegisterDefaultAcceleratorRuntime();
30 arcaneRegisterDefaultAcceleratorRuntime();
34 return arcaneGetDefaultExecutionPolicy();
40TEST(ArcaneAccelerator, Partition)
45 Runner runner(_defaultExecutionPolicy());
48 std::array<Real, 8> v1{ 1.3, 4.5, -1.2, 3.5, 7.0, 4.2, 2.3, 1.6 };
49 std::array<Real, 8> r1{ 4.5, 3.5, 7.0, 4.2, 2.3, 1.6, -1.2, 1.3 };
52 std::array<Real, 9> v2{ 1.3, 4.5, -1.2, 3.5, 7.0, 4.2, 2.3, 1.6, 1.1 };
53 std::array<Real, 9> r2{ 4.5, 3.5, 7.0, 4.2, 2.3, 1.1, 1.6, -1.2, 1.3 };
56 std::array<Real, 3> v3{ 1.3, -1.2, 0.5 };
57 std::array<Real, 3> r3{ 0.5, -1.2, 1.3 };
60 std::array<Real, 4> v4{ 3.5, 2.3, 4.5, 5.6 };
61 std::array<Real, 4> r4{ 3.5, 2.3, 4.5, 5.6 };
64 std::array<Real, 10> v5{ 1.3, 4.5, -1.2, 3.5, 7.0, 4.2, 2.3, 1.6, 1.1, 1.5 };
65 std::array<Real, 10> r5{ 4.5, 3.5, 7.0, 4.2, 2.3, 1.5, 1.1, 1.6, -1.2, 1.3 };
Types et macros pour gérer les boucles sur les accélérateurs.
File d'exécution pour un accélérateur.
Gestionnaire d'exécution pour accélérateur.
Vue d'un tableau d'éléments de type T.
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.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
void arcaneCallFunctionAndTerminateIfThrow(std::function< void()> function)