1 #pragma once 2 3 #include <petscmacros.h> 4 #include <petscdevice_cuda.h> 5 #include <petscdevice_hip.h> 6 7 #if PetscDefined(USING_HCC) && PetscDefined(USING_NVCC) 8 #error using both nvcc and hipcc at the same time? 9 #endif 10 11 #if PetscDefined(HAVE_CUDA) || PetscDefined(HAVE_HIP) 12 #define PETSC_HAVE_CUPM 1 13 #endif 14 15 #if PetscDefined(USING_NVCC) || PetscDefined(USING_HCC) 16 #define PETSC_USING_CUPMCC 1 17 #endif 18