xref: /petsc/include/petscdevice_cupm.h (revision a496304597bacff3545e802853d69e8765312868)
1*a4963045SJacob Faibussowitsch #pragma once
20e6b6b59SJacob Faibussowitsch 
30e6b6b59SJacob Faibussowitsch #include <petscmacros.h>
40e6b6b59SJacob Faibussowitsch #include <petscdevice_cuda.h>
50e6b6b59SJacob Faibussowitsch #include <petscdevice_hip.h>
60e6b6b59SJacob Faibussowitsch 
70e6b6b59SJacob Faibussowitsch #if PetscDefined(USING_HCC) && PetscDefined(USING_NVCC)
80e6b6b59SJacob Faibussowitsch   #error using both nvcc and hipcc at the same time?
90e6b6b59SJacob Faibussowitsch #endif
100e6b6b59SJacob Faibussowitsch 
110e6b6b59SJacob Faibussowitsch #if PetscDefined(HAVE_CUDA) || PetscDefined(HAVE_HIP)
120e6b6b59SJacob Faibussowitsch   #define PETSC_HAVE_CUPM 1
130e6b6b59SJacob Faibussowitsch #endif
140e6b6b59SJacob Faibussowitsch 
150e6b6b59SJacob Faibussowitsch #if PetscDefined(USING_NVCC) || PetscDefined(USING_HCC)
160e6b6b59SJacob Faibussowitsch   #define PETSC_USING_CUPMCC 1
170e6b6b59SJacob Faibussowitsch #endif
18