diff --git a/backends/vulkan/runtime/api/containers/Tensor.cpp b/backends/vulkan/runtime/api/containers/Tensor.cpp index 900854ccd75..8c76c11532b 100644 --- a/backends/vulkan/runtime/api/containers/Tensor.cpp +++ b/backends/vulkan/runtime/api/containers/Tensor.cpp @@ -478,13 +478,6 @@ vTensor::vTensor( if (storage_type != utils::kBuffer) { set_logical_limits(storage_.image_extents_); } - - if (dtype == vkapi::kHalf) { - VK_CHECK_COND( - api::context()->adapter_ptr()->supports_16bit_storage_buffers(), - "Half dtype is only available if the physical device supports float16 " - "storage buffers!"); - } } // NOLINTNEXTLINE diff --git a/backends/vulkan/runtime/graph/ops/PrepackNode.cpp b/backends/vulkan/runtime/graph/ops/PrepackNode.cpp index e27723468ab..bf501296b1b 100644 --- a/backends/vulkan/runtime/graph/ops/PrepackNode.cpp +++ b/backends/vulkan/runtime/graph/ops/PrepackNode.cpp @@ -68,6 +68,8 @@ api::StagingBuffer PrepackNode::create_staging_buffer(ComputeGraph* graph) { void PrepackNode::encode(ComputeGraph* graph) { api::Context* const context = graph->context(); + context->check_device_capabilities(shader_); + vTensorPtr packed = graph->get_tensor(packed_); api::StagingBuffer staging = create_staging_buffer(graph); diff --git a/backends/vulkan/test/op_tests/utils/gen_computegraph.py b/backends/vulkan/test/op_tests/utils/gen_computegraph.py index 472127ffe2e..6f93e662076 100644 --- a/backends/vulkan/test/op_tests/utils/gen_computegraph.py +++ b/backends/vulkan/test/op_tests/utils/gen_computegraph.py @@ -667,7 +667,6 @@ def gen_op_check_fn(self) -> str: op_check_fn = self.gen_decl(f"prepacked_check_{op_name}") + " {\n" op_check_fn_body = "" - op_check_fn_body += self.gen_conditional_skips() op_check_fn_body += self.gen_graph_build_code() op_check_fn_body += self.gen_graph_exec_code()