已合并
【fix】: Restore the fusible state of the kernel node during graph partitioning #1245
【fix】: Restore the fusible state of the kernel node during graph partitioning #1245
已合并
Achilles_d创建于 7月9日
2 个文件变更+1-1
@@ -482,7 +482,6 @@ bool LockDetector::IsFusible(SuperKernelBaseNode &curNode) {
482 depOpVecNum);482 depOpVecNum);
483 } else {483 } else {
484 SK_LOGI("[lock detector] Node %s: cannot be fused", curNode.Format().c_str());484 SK_LOGI("[lock detector] Node %s: cannot be fused", curNode.Format().c_str());
485- curNode.SetIsFusible(false);
486 // If deadlock was detected, set the failure reason with detail485 // If deadlock was detected, set the failure reason with detail
487 if (deadlockReason_ != DeadlockFailReason::NOT_FIND_DEADLOCK) {486 if (deadlockReason_ != DeadlockFailReason::NOT_FIND_DEADLOCK) {
488 curNode.SetFusionFailReason(deadlockReason_);487 curNode.SetFusionFailReason(deadlockReason_);
@@ -2631,6 +2631,7 @@ TEST_F(SuperKernelScopeSplitterTest, DeadlockRefine_ResourceDeadlockSplitAtWait)
2631 2631 
2632 // 期望切分为至少2个scope2632 // 期望切分为至少2个scope
2633 EXPECT_GE(scopeInfos.size(), 2);2633 EXPECT_GE(scopeInfos.size(), 2);
2634+ EXPECT_TRUE(k2->IsFusible()) << "deadlock node entering scopeAfter should be restored to fusible";
2634 2635 
2635 std::set<uint64_t> allProcessedNodes;2636 std::set<uint64_t> allProcessedNodes;
2636 for (const auto &scope : scopeInfos) {2637 for (const auto &scope : scopeInfos) {