From ad0b01ffe2f048b08cdd0b66a254b331df16ef36 Mon Sep 17 00:00:00 2001 From: Wilber Date: Wed, 23 Dec 2020 18:37:37 +0800 Subject: [PATCH] lod operator should not be reused in memory_optimize pass. (#29828) --- paddle/fluid/inference/analysis/passes/memory_optimize_pass.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/paddle/fluid/inference/analysis/passes/memory_optimize_pass.cc b/paddle/fluid/inference/analysis/passes/memory_optimize_pass.cc index defa0a525f..5132b3b5e7 100644 --- a/paddle/fluid/inference/analysis/passes/memory_optimize_pass.cc +++ b/paddle/fluid/inference/analysis/passes/memory_optimize_pass.cc @@ -96,6 +96,7 @@ void MemoryOptimizePass::CollectVarMemorySize( const int fake_batch_size = 1; auto valid_var = [&](framework::ir::Node* node) -> bool { + // lod operator reuse may cause unknown errors. std::set invalid_op = {"while", "conditional_block", "tensorrt_engine", @@ -103,6 +104,7 @@ void MemoryOptimizePass::CollectVarMemorySize( "merge_lod_tensor_infer", "merge_lod_tensor", "equal", + "sequence_pool", "lod_reset"}; for (auto* tmp : node->inputs) { CHECK(tmp->IsOp()); -- GitLab