#pragma once #include #include #include namespace at { namespace cuda { inline Device getDeviceFromPtr(void* ptr) { cudaPointerAttributes attr; AT_CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); return {DeviceType::CUDA, static_cast(attr.device)}; } }} // namespace at::cuda