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>
31#ifdef ARCANE_COMPONENT_arcane_hip
32#define ARCANE_HIP_EXPORT ARCANE_EXPORT
34#define ARCANE_HIP_EXPORT ARCANE_IMPORT
37namespace Arcane::Accelerator::Hip
43extern "C++" ARCANE_HIP_EXPORT
void
44arcaneCheckHipErrors(
const TraceInfo& ti,hipError_t e);
46extern "C++" ARCANE_HIP_EXPORT
void
47arcaneCheckHipErrorsNoThrow(
const TraceInfo& ti,hipError_t e);
49#define ARCANE_CHECK_HIP(result) \
50 Arcane::Accelerator::Hip::arcaneCheckHipErrors(A_FUNCINFO,result)
53#define ARCANE_CHECK_HIP_NOTHROW(result) \
54 Arcane::Accelerator::Hip::arcaneCheckHipErrorsNoThrow(A_FUNCINFO,result)
60getHipMemoryAllocator();
63getHipDeviceMemoryAllocator();
66getHipUnifiedMemoryAllocator();
69getHipHostPinnedMemoryAllocator();
Interface d'un allocateur pour la mémoire.
Espace de nom de Arccore.