[llvm] [Offload] Add device UID (PR #164391)
Robert Imschweiler via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 4 07:49:01 PST 2025
================
@@ -293,6 +294,12 @@ struct CUDADeviceTy : public GenericDeviceTy {
if (auto Err = Plugin::check(Res, "error in cuDeviceGet: %s"))
return Err;
+ CUuuid UUID = {0};
+ Res = cuDeviceGetUuid(&UUID, Device);
+ if (auto Err = Plugin::check(Res, "error in cuDeviceGetUuid: %s"))
+ return Err;
+ setDeviceUidFromVendorUid(toHex(UUID.bytes, true));
----------------
ro-i wrote:
> Riiiight, well that API probably should've been implemented as to not rely on permanent storage but I guess that's moot
Unfortunately, OpenMP 6.0 explicitly specifies `const char *` (and in C wouldn't have `std::string` anyway).
> Could probably just cache it at the OpenMP layer in a map of device pointers to strings and return the pointer and look it up if empty, then return it.
Urgh. Really?
https://github.com/llvm/llvm-project/pull/164391
More information about the llvm-commits
mailing list