diff --git a/unit_tests/scheduler/Test_Scheduler.cpp b/unit_tests/scheduler/Test_Scheduler.cpp index be87e8ac77020b5c05469fb959752a66512e6ffb..54e57ec44a9b803cdba0812ceebbac35c2445adf 100644 --- a/unit_tests/scheduler/Test_Scheduler.cpp +++ b/unit_tests/scheduler/Test_Scheduler.cpp @@ -17,7 +17,6 @@ #include "aidge/graph/Node.hpp" #include "aidge/graph/GraphView.hpp" #include "aidge/graph/OpArgs.hpp" -#include "aidge/operator/GenericOperator.hpp" #include "aidge/operator/Memorize.hpp" #include "aidge/operator/Pop.hpp" #include "aidge/operator/Stack.hpp" @@ -29,7 +28,6 @@ #include "aidge/operator/MetaOperator.hpp" #include "aidge/scheduler/SequentialScheduler.hpp" #include "aidge/scheduler/ParallelScheduler.hpp" -#include "aidge/graph/Testing.hpp" #include "aidge/backend/cpu/operator/FCImpl.hpp" #include "aidge/backend/cpu/operator/ConvImpl.hpp" @@ -522,57 +520,6 @@ TEST_CASE("[cpu/scheduler] Accumulate", "[scheduler]") { REQUIRE(*output == *expectedOutput); } -TEST_CASE("[cpu/scheduler] Branch", "[scheduler]") { - std::shared_ptr<Tensor> in = std::make_shared<Tensor>( - Array2D<float, 2, 3>{{{1, 2, 3}, {4, 5, 6}}}); - - std::shared_ptr<GraphView> g = Sequential({ - Producer(in, "input"), - Parallel({ - Sequential({ - GenericOperator("b0_op1", {InputCategory::Data}, 1), - GenericOperator("b0_op2", {InputCategory::Data}, 1), - GenericOperator("b0_op3", {InputCategory::Data}, 1), - GenericOperator("b0_op4", {InputCategory::Data}, 1), - GenericOperator("b0_op5", {InputCategory::Data}, 1) - }), - Sequential({ - GenericOperator("b1_op1", {InputCategory::Data}, 1), - GenericOperator("b1_op2", {InputCategory::Data}, 1), - GenericOperator("b1_op3", {InputCategory::Data}, 1) - }), - Sequential({ - GenericOperator("b2_op1", {InputCategory::Data}, 1) - }) - }), - GenericOperator("op1", {InputCategory::Data, InputCategory::Data, InputCategory::Data}, 1), - GenericOperator("op2", {InputCategory::Data}, 1), - GenericOperator("op3", {InputCategory::Data}, 1) - }); - - g->save("branch_forwarded"); - - auto scheduler = SequentialScheduler(g); - scheduler.generateScheduling(); - scheduler.saveStaticSchedulingDiagram("branch_scheduling"); - - // Default scheduling order is not necessarily determinist, but is garanteed to be correct in every case. - // This behavior might change in the future. - auto seqSchedule = scheduler.Scheduler::getSequentialStaticScheduling(0, Scheduler::SchedulingPolicy::Default); - fmt::println("seqSchedule = {}", seqSchedule); - - scheduler.tagForkBranches(); - g->save("branch_forwarded_tag"); - - seqSchedule = scheduler.Scheduler::getSequentialStaticScheduling(0, Scheduler::SchedulingPolicy::ShortestBranchFirst); - REQUIRE(nodePtrTo(seqSchedule, nodePtrToType) == std::vector<std::string>{ - "Producer", "b2_op1", "b1_op1", "b1_op2", "b1_op3", "b0_op1", "b0_op2", "b0_op3", "b0_op4", "b0_op5", "op1", "op2", "op3"}); - - seqSchedule = scheduler.Scheduler::getSequentialStaticScheduling(0, Scheduler::SchedulingPolicy::LonguestBranchFirst); - REQUIRE(nodePtrTo(seqSchedule, nodePtrToType) == std::vector<std::string>{ - "Producer", "b0_op1", "b0_op2", "b0_op3", "b0_op4", "b0_op5", "b1_op1", "b1_op2", "b1_op3", "b2_op1", "op1", "op2", "op3"}); -} - #ifdef WITH_OPENSSL TEST_CASE("[cpu/scheduler] Select", "[scheduler]") { std::shared_ptr<Tensor> in = std::make_shared<Tensor>(