From 3d8af6eb65c0507ec491307917aaa37665c3cd24 Mon Sep 17 00:00:00 2001 From: Wanming Lin Date: Fri, 8 Dec 2023 00:09:49 +0800 Subject: [PATCH] [WebNN EP] Skip split initializer (#18729) --- .../webnn/builders/impl/split_op_builder.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/onnxruntime/core/providers/webnn/builders/impl/split_op_builder.cc b/onnxruntime/core/providers/webnn/builders/impl/split_op_builder.cc index d83fb92b2c..d568d4e625 100644 --- a/onnxruntime/core/providers/webnn/builders/impl/split_op_builder.cc +++ b/onnxruntime/core/providers/webnn/builders/impl/split_op_builder.cc @@ -17,6 +17,9 @@ namespace webnn { class SplitOpBuilder : public BaseOpBuilder { // Add operator related. + public: + void AddInitializersToSkip(ModelBuilder& model_builder, const Node& node) const override; + private: Status AddToModelBuilderImpl(ModelBuilder& model_builder, const Node& node, const logging::Logger& logger) const override ORT_MUST_USE_RESULT; @@ -29,6 +32,15 @@ class SplitOpBuilder : public BaseOpBuilder { int GetMinSupportedOpSet(const Node& node) const override; }; +// Add operator related. + +void SplitOpBuilder::AddInitializersToSkip(ModelBuilder& model_builder, const Node& node) const { + // Skip split initializer if present. + if (node.InputDefs().size() > 1) { + model_builder.AddInitializerToSkip(node.InputDefs()[1]->Name()); + } +} + Status SplitOpBuilder::AddToModelBuilderImpl(ModelBuilder& model_builder, const Node& node, const logging::Logger& logger) const {