diff --git a/src/contrib/ethosu/cascader/pareto.cc b/src/contrib/ethosu/cascader/pareto.cc index e40a6602fa2a..5d025b57bbe4 100644 --- a/src/contrib/ethosu/cascader/pareto.cc +++ b/src/contrib/ethosu/cascader/pareto.cc @@ -91,6 +91,9 @@ std::vector ParetoCullPlans(std::vector plans, size_t max_plans, } std::sort(plans.begin(), plans.end(), [](const Plan& a, const Plan& b) -> bool { + if (a->GetMemoryUsage() == b->GetMemoryUsage()) { + return a->GetCycles() < b->GetCycles(); + } return a->GetMemoryUsage() < b->GetMemoryUsage(); }); std::vector> costs; @@ -122,6 +125,9 @@ std::vector ParetoCullProposals(std::vector proposals, size_ } std::sort(proposals.begin(), proposals.end(), [](const Proposal& a, const Proposal& b) -> bool { + if (a->GetMemoryUsage() == b->GetMemoryUsage()) { + return a->GetCycles() < b->GetCycles(); + } return a->GetMemoryUsage() < b->GetMemoryUsage(); }); std::vector> costs;