From b58776975074be58c41046f6296cfdb382182944 Mon Sep 17 00:00:00 2001 From: Weiqun Zhang Date: Wed, 19 Jul 2023 19:56:03 +0000 Subject: [PATCH] SYCL: UUID This was implemented a couple months ago, but I didn't have time to check the correctness until now. --- Src/Base/AMReX_GpuDevice.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/Src/Base/AMReX_GpuDevice.cpp b/Src/Base/AMReX_GpuDevice.cpp index d36191f22fe..7c6e307b3cf 100644 --- a/Src/Base/AMReX_GpuDevice.cpp +++ b/Src/Base/AMReX_GpuDevice.cpp @@ -319,7 +319,6 @@ Device::Initialize () #elif defined(AMREX_USE_SYCL) -#if 0 auto const& d = *sycl_device; if (d.has(sycl::aspect::ext_intel_device_info_uuid)) { auto uuid = d.get_info(); @@ -345,10 +344,20 @@ Device::Initialize () } num_devices_used = uuid_counts.size(); num_device_partners = uuid_counts[my_uuid]; - } -#else - num_device_partners = 1; // xxxxx SYCL: todo, also check memory available when implicit scaling is off. + +#if 0 + for (int i = 0; i < ParallelDescriptor::NProcs(); ++i) { + if (i == ParallelDescriptor::MyProc()) { + std::cout << "Proc. " << i << ": |"; + for (auto x : uuid) { + std::cout << std::hex << static_cast(x) << "|"; + } + std::cout << std::endl;; + } + ParallelDescriptor::Barrier(); + } #endif + } #endif