12#ifndef ARCANE_HIP_HIPACCELERATOR_H
13#define ARCANE_HIP_HIPACCELERATOR_H
17#include "arcane/utils/Array.h"
18#include "arcane/utils/TraceInfo.h"
19#include "arcane/utils/NotSupportedException.h"
20#include "arcane/utils/FatalErrorException.h"
24#include <hip/hip_runtime.h>
29#ifdef ARCANE_COMPONENT_arcane_hip
30#define ARCANE_HIP_EXPORT ARCANE_EXPORT
32#define ARCANE_HIP_EXPORT ARCANE_IMPORT
35namespace Arcane::Accelerator::Hip
41extern "C++" ARCANE_HIP_EXPORT
void
42arcaneCheckHipErrors(
const TraceInfo& ti,hipError_t e);
44extern "C++" ARCANE_HIP_EXPORT
void
45arcaneCheckHipErrorsNoThrow(
const TraceInfo& ti,hipError_t e);
47#define ARCANE_CHECK_HIP(result) \
48 Arcane::Accelerator::Hip::arcaneCheckHipErrors(A_FUNCINFO,result)
51#define ARCANE_CHECK_HIP_NOTHROW(result) \
52 Arcane::Accelerator::Hip::arcaneCheckHipErrorsNoThrow(A_FUNCINFO,result)
58getHipMemoryAllocator();
61getHipDeviceMemoryAllocator();
64getHipUnifiedMemoryAllocator();
67getHipHostPinnedMemoryAllocator();
Interface d'un allocateur pour la mémoire.