ArmNN
 21.11
SingleAxisPriorityListTests.cpp File Reference

Go to the source code of this file.

Functions

 TEST_SUITE ("SingleAxisPriorityListTestSuite")
 

Function Documentation

◆ TEST_SUITE()

TEST_SUITE ( "SingleAxisPriorityListTestSuite"  )

Definition at line 15 of file SingleAxisPriorityListTests.cpp.

References fsrcnn, GetMinPossibleMemorySize(), StrategyValidator::SetStrategy(), and armnn::SingleAxisPacking.

16 {
17  TEST_CASE("SingleAxisPriorityListTest")
18  {
19  std::vector<MemBlock> memBlocks = fsrcnn;
20 
21  auto singleAxisPriorityList = std::make_shared<SingleAxisPriorityList>();
22 
23  CHECK_EQ(singleAxisPriorityList->GetName(), std::string("SingleAxisPriorityList"));
24  CHECK_EQ(singleAxisPriorityList->GetMemBlockStrategyType(), MemBlockStrategyType::SingleAxisPacking);
25 
26  StrategyValidator validator;
27  validator.SetStrategy(singleAxisPriorityList);
28 
29  std::vector<MemBin> memBins;
30 
31  CHECK_NOTHROW(memBins = validator.Optimize(memBlocks));
32 
33  size_t minMemSize = GetMinPossibleMemorySize(memBlocks);
34  size_t actualSize = 0;
35  for (auto memBin : memBins)
36  {
37  actualSize += memBin.m_MemSize;
38  }
39 
40  CHECK(minMemSize == actualSize);
41  }
42 }
std::vector< armnn::MemBlock > fsrcnn
size_t GetMinPossibleMemorySize(const std::vector< armnn::MemBlock > &blocks)
void SetStrategy(std::shared_ptr< IMemoryOptimizerStrategy > strategy)