1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#include <stdexcept> #include <hip/hip_runtime_api.h> static __global__ void fake_hip_kernel() { } int __host__ try_compile_hip_func(int x) { fake_hip_kernel<<<1, 1>>>(); hipError_t err = hipGetLastError(); if (err != hipSuccess) { throw std::runtime_error(hipGetErrorString(err)); } return x * x; }