From 57a34ecbe6d19ce01eecc09d472a30955704683e Mon Sep 17 00:00:00 2001 From: Yulong Wang <7679871+fs-eire@users.noreply.github.com> Date: Wed, 5 Feb 2025 15:35:41 -0800 Subject: [PATCH] remove adapter_ --- onnxruntime/core/providers/webgpu/webgpu_context.cc | 11 ++++++----- onnxruntime/core/providers/webgpu/webgpu_context.h | 1 - 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/onnxruntime/core/providers/webgpu/webgpu_context.cc b/onnxruntime/core/providers/webgpu/webgpu_context.cc index 5d144ee28a..a221ac7884 100644 --- a/onnxruntime/core/providers/webgpu/webgpu_context.cc +++ b/onnxruntime/core/providers/webgpu/webgpu_context.cc @@ -77,6 +77,7 @@ void WebGpuContext::Initialize(const WebGpuBufferCacheConfig& buffer_cache_confi req_adapter_options.nextInChain = &adapter_toggles_desc; #endif + wgpu::Adapter adapter; ORT_ENFORCE(wgpu::WaitStatus::Success == instance_.WaitAny(instance_.RequestAdapter( &req_adapter_options, wgpu::CallbackMode::WaitAnyOnly, @@ -84,9 +85,9 @@ void WebGpuContext::Initialize(const WebGpuBufferCacheConfig& buffer_cache_confi ORT_ENFORCE(status == wgpu::RequestAdapterStatus::Success, "Failed to get a WebGPU adapter: ", std::string_view{message}); *ptr = adapter; }, - &adapter_), + &adapter), UINT64_MAX)); - ORT_ENFORCE(adapter_ != nullptr, "Failed to get a WebGPU adapter."); + ORT_ENFORCE(adapter != nullptr, "Failed to get a WebGPU adapter."); // Create wgpu::Device wgpu::DeviceDescriptor device_desc = {}; @@ -104,12 +105,12 @@ void WebGpuContext::Initialize(const WebGpuBufferCacheConfig& buffer_cache_confi device_toggles_desc.disabledToggles = disabled_device_toggles.data(); #endif - std::vector required_features = GetAvailableRequiredFeatures(adapter_); + std::vector required_features = GetAvailableRequiredFeatures(adapter); if (required_features.size() > 0) { device_desc.requiredFeatures = required_features.data(); device_desc.requiredFeatureCount = required_features.size(); } - wgpu::RequiredLimits required_limits = GetRequiredLimits(adapter_); + wgpu::RequiredLimits required_limits = GetRequiredLimits(adapter); device_desc.requiredLimits = &required_limits; // TODO: revise temporary error handling @@ -121,7 +122,7 @@ void WebGpuContext::Initialize(const WebGpuBufferCacheConfig& buffer_cache_confi LOGS_DEFAULT(INFO) << "WebGPU device lost (" << int(reason) << "): " << std::string_view{message}; }); - ORT_ENFORCE(wgpu::WaitStatus::Success == instance_.WaitAny(adapter_.RequestDevice( + ORT_ENFORCE(wgpu::WaitStatus::Success == instance_.WaitAny(adapter.RequestDevice( &device_desc, wgpu::CallbackMode::WaitAnyOnly, [](wgpu::RequestDeviceStatus status, wgpu::Device device, wgpu::StringView message, wgpu::Device* ptr) { diff --git a/onnxruntime/core/providers/webgpu/webgpu_context.h b/onnxruntime/core/providers/webgpu/webgpu_context.h index 7bfea3fdca..c892cd2169 100644 --- a/onnxruntime/core/providers/webgpu/webgpu_context.h +++ b/onnxruntime/core/providers/webgpu/webgpu_context.h @@ -177,7 +177,6 @@ class WebGpuContext final { LibraryHandles modules_; wgpu::Instance instance_; - wgpu::Adapter adapter_; wgpu::Device device_; webgpu::ValidationMode validation_mode_;