From d7d151160eecdbb98b41734be0cdb2ed5548f886 Mon Sep 17 00:00:00 2001 From: Dheeraj Peri Date: Tue, 5 Apr 2022 01:12:15 -0700 Subject: [PATCH] fix: Getting unsupported ops will now bypass non-schema ops avoiding redundant failures Signed-off-by: Dheeraj Peri --- core/conversion/conversion.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/core/conversion/conversion.cpp b/core/conversion/conversion.cpp index 9547ddb965..fb7d96856f 100644 --- a/core/conversion/conversion.cpp +++ b/core/conversion/conversion.cpp @@ -487,12 +487,10 @@ std::string ConvertBlockToEngine( std::unordered_map GetUnsupportedOpsInBlock(const torch::jit::Block* b) { std::unordered_map unsupported_ops; for (const auto n : b->nodes()) { - if (n->kind() != torch::jit::prim::Loop && n->kind() != torch::jit::prim::If && !OpSupported(n) && - n->kind() != torch::jit::prim::DictConstruct) { - auto schema = n->maybeSchema(); - TORCHTRT_CHECK( - schema, - "Unable to get schema for Node " << util::node_info(n) << " (conversion.VerifyCoverterSupportForBlock)"); + auto schema = n->maybeSchema(); + // Some ops like torch::jit::prim::Loop, torch::jit::prim::If, torch::jit::prim::DictConstruct don't have a schema but they are supported. + // torch::jit::prim::DictConstruct is supported via fallback only + if (schema && !OpSupported(n)) { std::stringstream ss; ss << *schema; unsupported_ops[schema->operator_name()] = ss.str();