aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMatthew Sloyan <matthew.sloyan@arm.com>2020-09-08 12:00:32 +0100
committerMatthew Sloyan <matthew.sloyan@arm.com>2020-09-11 18:24:18 +0100
commit80c6b146046252af153af27025a28fb59d33c5e6 (patch)
tree82cc16369d0a163fc4f97a25af13c4d792faecf8 /tests
parent77062ca6f288830a21e4ff4237059623eba25fa2 (diff)
downloadarmnn-80c6b146046252af153af27025a28fb59d33c5e6.tar.gz
IVGCVSW-5299 Remove some boost::numeric_cast from armnn/tests
* Replaced with armnn/utility/NumericCast.hpp * Removed combinations without float implementation in NumericCast.hpp Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: Ia4ec605f063cdb0071fff302ef48c610f9f9505e
Diffstat (limited to 'tests')
-rw-r--r--tests/CaffePreprocessor.cpp5
-rw-r--r--tests/Cifar10Database.cpp11
-rw-r--r--tests/DeepSpeechV1Database.hpp5
-rw-r--r--tests/DeepSpeechV1InferenceTest.hpp1
-rw-r--r--tests/ImagePreprocessor.cpp6
-rw-r--r--tests/InferenceModel.hpp7
-rw-r--r--tests/InferenceTest.inl4
-rw-r--r--tests/InferenceTestImage.cpp15
-rw-r--r--tests/MnistDatabase.cpp5
-rw-r--r--tests/MobileNetSsdDatabase.hpp5
-rw-r--r--tests/NetworkExecutionUtils/NetworkExecutionUtils.hpp7
-rw-r--r--tests/YoloDatabase.cpp5
-rw-r--r--tests/profiling/gatordmock/tests/GatordMockTests.cpp12
13 files changed, 45 insertions, 43 deletions
diff --git a/tests/CaffePreprocessor.cpp b/tests/CaffePreprocessor.cpp
index b92f1f7108..e531a31a62 100644
--- a/tests/CaffePreprocessor.cpp
+++ b/tests/CaffePreprocessor.cpp
@@ -5,7 +5,8 @@
#include "InferenceTestImage.hpp"
#include "CaffePreprocessor.hpp"
-#include <boost/numeric/conversion/cast.hpp>
+#include <armnn/utility/NumericCast.hpp>
+
#include <boost/format.hpp>
#include <iostream>
@@ -28,7 +29,7 @@ CaffePreprocessor::CaffePreprocessor(const std::string& binaryFileDirectory, uns
std::unique_ptr<CaffePreprocessor::TTestCaseData> CaffePreprocessor::GetTestCaseData(unsigned int testCaseId)
{
- testCaseId = testCaseId % boost::numeric_cast<unsigned int>(m_ImageSet.size());
+ testCaseId = testCaseId % armnn::numeric_cast<unsigned int>(m_ImageSet.size());
const ImageSet& imageSet = m_ImageSet[testCaseId];
const std::string fullPath = m_BinaryDirectory + imageSet.first;
diff --git a/tests/Cifar10Database.cpp b/tests/Cifar10Database.cpp
index db2a234161..9e90da5032 100644
--- a/tests/Cifar10Database.cpp
+++ b/tests/Cifar10Database.cpp
@@ -5,8 +5,8 @@
#include "Cifar10Database.hpp"
#include <armnn/Logging.hpp>
+#include <armnn/utility/NumericCast.hpp>
-#include <boost/numeric/conversion/cast.hpp>
#include <fstream>
#include <vector>
@@ -70,9 +70,10 @@ std::unique_ptr<Cifar10Database::TTestCaseData> Cifar10Database::GetTestCaseData
{
for (unsigned int w = 0; w < 32; w++)
{
- inputImageData[countR_o] = boost::numeric_cast<float>(I[countR++]);
- inputImageData[countG_o] = boost::numeric_cast<float>(I[countG++]);
- inputImageData[countB_o] = boost::numeric_cast<float>(I[countB++]);
+ // Static_cast of unsigned char is safe with float
+ inputImageData[countR_o] = static_cast<float>(I[countR++]);
+ inputImageData[countG_o] = static_cast<float>(I[countG++]);
+ inputImageData[countB_o] = static_cast<float>(I[countB++]);
countR_o += step;
countG_o += step;
@@ -80,6 +81,6 @@ std::unique_ptr<Cifar10Database::TTestCaseData> Cifar10Database::GetTestCaseData
}
}
- const unsigned int label = boost::numeric_cast<unsigned int>(I[0]);
+ const unsigned int label = armnn::numeric_cast<unsigned int>(I[0]);
return std::make_unique<TTestCaseData>(label, std::move(inputImageData));
}
diff --git a/tests/DeepSpeechV1Database.hpp b/tests/DeepSpeechV1Database.hpp
index fa7dda0d76..5e721c3cb9 100644
--- a/tests/DeepSpeechV1Database.hpp
+++ b/tests/DeepSpeechV1Database.hpp
@@ -11,8 +11,7 @@
#include <vector>
#include <armnn/TypesUtils.hpp>
-
-#include <boost/numeric/conversion/cast.hpp>
+#include <armnn/utility/NumericCast.hpp>
#include <array>
#include <string>
@@ -80,7 +79,7 @@ inline auto ParseDataArray<armnn::DataType::QAsymmU8>(std::istream& stream,
return ParseArrayImpl<uint8_t>(stream,
[&quantizationScale, &quantizationOffset](const std::string & s)
{
- return boost::numeric_cast<uint8_t>(
+ return armnn::numeric_cast<uint8_t>(
armnn::Quantize<uint8_t>(std::stof(s),
quantizationScale,
quantizationOffset));
diff --git a/tests/DeepSpeechV1InferenceTest.hpp b/tests/DeepSpeechV1InferenceTest.hpp
index 7a33d34ace..28d82bfc21 100644
--- a/tests/DeepSpeechV1InferenceTest.hpp
+++ b/tests/DeepSpeechV1InferenceTest.hpp
@@ -10,7 +10,6 @@
#include <armnn/utility/Assert.hpp>
#include <armnn/utility/IgnoreUnused.hpp>
-#include <boost/numeric/conversion/cast.hpp>
#include <boost/test/tools/floating_point_comparison.hpp>
#include <vector>
diff --git a/tests/ImagePreprocessor.cpp b/tests/ImagePreprocessor.cpp
index 5a42b8ae31..4557cadca5 100644
--- a/tests/ImagePreprocessor.cpp
+++ b/tests/ImagePreprocessor.cpp
@@ -9,8 +9,8 @@
#include <armnn/TypesUtils.hpp>
#include <armnnUtils/Permute.hpp>
+#include <armnn/utility/NumericCast.hpp>
-#include <boost/numeric/conversion/cast.hpp>
#include <boost/format.hpp>
#include <iostream>
@@ -21,7 +21,7 @@ template <typename TDataType>
unsigned int ImagePreprocessor<TDataType>::GetLabelAndResizedImageAsFloat(unsigned int testCaseId,
std::vector<float> & result)
{
- testCaseId = testCaseId % boost::numeric_cast<unsigned int>(m_ImageSet.size());
+ testCaseId = testCaseId % armnn::numeric_cast<unsigned int>(m_ImageSet.size());
const ImageSet& imageSet = m_ImageSet[testCaseId];
const std::string fullPath = m_BinaryDirectory + imageSet.first;
@@ -38,7 +38,7 @@ unsigned int ImagePreprocessor<TDataType>::GetLabelAndResizedImageAsFloat(unsign
// duplicate data across the batch
for (unsigned int i = 1; i < m_BatchSize; i++)
{
- result.insert(result.end(), result.begin(), result.begin() + boost::numeric_cast<int>(GetNumImageElements()));
+ result.insert(result.end(), result.begin(), result.begin() + armnn::numeric_cast<int>(GetNumImageElements()));
}
if (m_DataFormat == DataFormat::NCHW)
diff --git a/tests/InferenceModel.hpp b/tests/InferenceModel.hpp
index 8ac44f98fb..527cc64d85 100644
--- a/tests/InferenceModel.hpp
+++ b/tests/InferenceModel.hpp
@@ -10,6 +10,7 @@
#include <armnn/utility/Timer.hpp>
#include <armnn/BackendRegistry.hpp>
#include <armnn/utility/Assert.hpp>
+#include <armnn/utility/NumericCast.hpp>
#if defined(ARMNN_SERIALIZER)
#include "armnnDeserializer/IDeserializer.hpp"
@@ -204,7 +205,7 @@ public:
network = parser->CreateNetworkFromBinary(file);
}
- unsigned int subgraphId = boost::numeric_cast<unsigned int>(params.m_SubgraphId);
+ unsigned int subgraphId = armnn::numeric_cast<unsigned int>(params.m_SubgraphId);
for (const std::string& inputLayerName : params.m_InputBindings)
{
@@ -487,10 +488,10 @@ public:
boost::apply_visitor([expectedOutputDataSize, i](auto&& value)
{
- const unsigned int actualOutputDataSize = boost::numeric_cast<unsigned int>(value.size());
+ const unsigned int actualOutputDataSize = armnn::numeric_cast<unsigned int>(value.size());
if (actualOutputDataSize < expectedOutputDataSize)
{
- unsigned int outputIndex = boost::numeric_cast<unsigned int>(i);
+ unsigned int outputIndex = i;
throw armnn::Exception(
fmt::format("Not enough data for output #{0}: expected "
"{1} elements, got {2}", outputIndex, expectedOutputDataSize, actualOutputDataSize));
diff --git a/tests/InferenceTest.inl b/tests/InferenceTest.inl
index 4a97d17018..88ce3526e2 100644
--- a/tests/InferenceTest.inl
+++ b/tests/InferenceTest.inl
@@ -5,6 +5,8 @@
#include "InferenceTest.hpp"
#include <armnn/utility/Assert.hpp>
+#include <armnn/utility/NumericCast.hpp>
+
#include <boost/numeric/conversion/cast.hpp>
#include <boost/program_options.hpp>
#include <fmt/format.h>
@@ -130,7 +132,7 @@ TestCaseResult ClassifierTestCase<TTestCaseDatabase, TModel>::ProcessResult(cons
unsigned int prediction = 0;
boost::apply_visitor([&](auto&& value)
{
- prediction = boost::numeric_cast<unsigned int>(
+ prediction = armnn::numeric_cast<unsigned int>(
std::distance(value.begin(), std::max_element(value.begin(), value.end())));
},
output);
diff --git a/tests/InferenceTestImage.cpp b/tests/InferenceTestImage.cpp
index f76c958f4e..a1b6cf4bdb 100644
--- a/tests/InferenceTestImage.cpp
+++ b/tests/InferenceTestImage.cpp
@@ -6,6 +6,7 @@
#include <armnn/utility/Assert.hpp>
#include <armnn/utility/IgnoreUnused.hpp>
+#include <armnn/utility/NumericCast.hpp>
#include <boost/numeric/conversion/cast.hpp>
#include <fmt/format.h>
@@ -146,9 +147,9 @@ InferenceTestImage::InferenceTestImage(char const* filePath)
throw InferenceTestImageLoadFailed(fmt::format("Could not load empty image at {}", filePath));
}
- m_Width = boost::numeric_cast<unsigned int>(width);
- m_Height = boost::numeric_cast<unsigned int>(height);
- m_NumChannels = boost::numeric_cast<unsigned int>(channels);
+ m_Width = armnn::numeric_cast<unsigned int>(width);
+ m_Height = armnn::numeric_cast<unsigned int>(height);
+ m_NumChannels = armnn::numeric_cast<unsigned int>(channels);
const unsigned int sizeInBytes = GetSizeInBytes();
m_Data.resize(sizeInBytes);
@@ -185,11 +186,11 @@ void InferenceTestImage::StbResize(InferenceTestImage& im, const unsigned int ne
std::vector<uint8_t> newData;
newData.resize(newWidth * newHeight * im.GetNumChannels() * im.GetSingleElementSizeInBytes());
- // boost::numeric_cast<>() is used for user-provided data (protecting about overflows).
+ // armnn::numeric_cast<>() is used for user-provided data (protecting about overflows).
// static_cast<> is ok for internal data (assumes that, when internal data was originally provided by a user,
- // a boost::numeric_cast<>() handled the conversion).
- const int nW = boost::numeric_cast<int>(newWidth);
- const int nH = boost::numeric_cast<int>(newHeight);
+ // a armnn::numeric_cast<>() handled the conversion).
+ const int nW = armnn::numeric_cast<int>(newWidth);
+ const int nH = armnn::numeric_cast<int>(newHeight);
const int w = static_cast<int>(im.GetWidth());
const int h = static_cast<int>(im.GetHeight());
diff --git a/tests/MnistDatabase.cpp b/tests/MnistDatabase.cpp
index 9abc3a6d2b..bbeb8caf55 100644
--- a/tests/MnistDatabase.cpp
+++ b/tests/MnistDatabase.cpp
@@ -6,8 +6,6 @@
#include <armnn/Logging.hpp>
-#include <boost/numeric/conversion/cast.hpp>
-
#include <fstream>
#include <vector>
@@ -94,7 +92,8 @@ std::unique_ptr<MnistDatabase::TTestCaseData> MnistDatabase::GetTestCaseData(uns
for (unsigned int i = 0; i < col * row; ++i)
{
- inputImageData[i] = boost::numeric_cast<float>(I[i]);
+ // Static_cast of unsigned char is safe with float
+ inputImageData[i] = static_cast<float>(I[i]);
if(m_ScaleValues)
{
diff --git a/tests/MobileNetSsdDatabase.hpp b/tests/MobileNetSsdDatabase.hpp
index 1921831fa3..9cd987d2ed 100644
--- a/tests/MobileNetSsdDatabase.hpp
+++ b/tests/MobileNetSsdDatabase.hpp
@@ -11,8 +11,7 @@
#include <QuantizeHelper.hpp>
#include <armnn/TypesUtils.hpp>
-
-#include <boost/numeric/conversion/cast.hpp>
+#include <armnn/utility/NumericCast.hpp>
#include <array>
#include <memory>
@@ -75,7 +74,7 @@ MobileNetSsdDatabase::MobileNetSsdDatabase(const std::string& imageDir, float sc
std::unique_ptr<MobileNetSsdTestCaseData> MobileNetSsdDatabase::GetTestCaseData(unsigned int testCaseId)
{
const unsigned int safeTestCaseId =
- testCaseId % boost::numeric_cast<unsigned int>(g_PerTestCaseInput.size());
+ testCaseId % armnn::numeric_cast<unsigned int>(g_PerTestCaseInput.size());
const ObjectDetectionInput& testCaseInput = g_PerTestCaseInput[safeTestCaseId];
// Load test case input
diff --git a/tests/NetworkExecutionUtils/NetworkExecutionUtils.hpp b/tests/NetworkExecutionUtils/NetworkExecutionUtils.hpp
index 69941d5678..74f02d71cb 100644
--- a/tests/NetworkExecutionUtils/NetworkExecutionUtils.hpp
+++ b/tests/NetworkExecutionUtils/NetworkExecutionUtils.hpp
@@ -4,6 +4,7 @@
//
#include <armnn/ArmNN.hpp>
#include <armnn/TypesUtils.hpp>
+#include <armnn/utility/NumericCast.hpp>
#include <armnn/utility/Timer.hpp>
#if defined(ARMNN_SERIALIZER)
@@ -136,7 +137,7 @@ template<>
auto ParseDataArray<armnn::DataType::QAsymmU8>(std::istream& stream)
{
return ParseArrayImpl<uint8_t>(stream,
- [](const std::string& s) { return boost::numeric_cast<uint8_t>(std::stoi(s)); });
+ [](const std::string& s) { return armnn::numeric_cast<uint8_t>(std::stoi(s)); });
}
template<>
@@ -147,7 +148,7 @@ auto ParseDataArray<armnn::DataType::QAsymmU8>(std::istream& stream,
return ParseArrayImpl<uint8_t>(stream,
[&quantizationScale, &quantizationOffset](const std::string & s)
{
- return boost::numeric_cast<uint8_t>(
+ return armnn::numeric_cast<uint8_t>(
armnn::Quantize<uint8_t>(std::stof(s),
quantizationScale,
quantizationOffset));
@@ -156,7 +157,7 @@ auto ParseDataArray<armnn::DataType::QAsymmU8>(std::istream& stream,
std::vector<unsigned int> ParseArray(std::istream& stream)
{
return ParseArrayImpl<unsigned int>(stream,
- [](const std::string& s) { return boost::numeric_cast<unsigned int>(std::stoi(s)); });
+ [](const std::string& s) { return armnn::numeric_cast<unsigned int>(std::stoi(s)); });
}
std::vector<std::string> ParseStringList(const std::string & inputString, const char * delimiter)
diff --git a/tests/YoloDatabase.cpp b/tests/YoloDatabase.cpp
index 3b3e5a90d4..8b2c630205 100644
--- a/tests/YoloDatabase.cpp
+++ b/tests/YoloDatabase.cpp
@@ -7,13 +7,14 @@
#include <armnn/Exceptions.hpp>
#include <armnn/Logging.hpp>
+#include <armnn/utility/NumericCast.hpp>
+
#include <array>
#include <cstdint>
#include <tuple>
#include <utility>
#include <boost/format.hpp>
-#include <boost/numeric/conversion/cast.hpp>
#include "InferenceTestImage.hpp"
@@ -73,7 +74,7 @@ YoloDatabase::YoloDatabase(const std::string& imageDir)
std::unique_ptr<YoloDatabase::TTestCaseData> YoloDatabase::GetTestCaseData(unsigned int testCaseId)
{
- testCaseId = testCaseId % boost::numeric_cast<unsigned int>(g_PerTestCaseInputOutput.size());
+ testCaseId = testCaseId % armnn::numeric_cast<unsigned int>(g_PerTestCaseInputOutput.size());
const auto& testCaseInputOutput = g_PerTestCaseInputOutput[testCaseId];
const std::string imagePath = m_ImageDir + testCaseInputOutput.first;
diff --git a/tests/profiling/gatordmock/tests/GatordMockTests.cpp b/tests/profiling/gatordmock/tests/GatordMockTests.cpp
index 303a36a71a..4fd884cec4 100644
--- a/tests/profiling/gatordmock/tests/GatordMockTests.cpp
+++ b/tests/profiling/gatordmock/tests/GatordMockTests.cpp
@@ -11,6 +11,8 @@
#include <ProfilingService.hpp>
#include <TimelinePacketWriterFactory.hpp>
+#include <armnn/utility/NumericCast.hpp>
+
#include <server/include/timelineDecoder/TimelineDirectoryCaptureCommandHandler.hpp>
#include <server/include/timelineDecoder/TimelineDecoder.hpp>
@@ -18,11 +20,9 @@
#include <MockBackend.hpp>
-#include <boost/cast.hpp>
#include <boost/test/test_tools.hpp>
#include <boost/test/unit_test_suite.hpp>
-
BOOST_AUTO_TEST_SUITE(GatordMockTests)
using namespace armnn;
@@ -31,8 +31,6 @@ using namespace std::chrono_literals;
BOOST_AUTO_TEST_CASE(CounterCaptureHandlingTest)
{
- using boost::numeric_cast;
-
arm::pipe::PacketVersionResolver packetVersionResolver;
// Data with timestamp, counter idx & counter values
@@ -61,9 +59,9 @@ BOOST_AUTO_TEST_CASE(CounterCaptureHandlingTest)
std::unique_ptr<unsigned char[]> uniqueData2 = std::make_unique<unsigned char[]>(dataLength);
unsigned char* data2 = reinterpret_cast<unsigned char*>(uniqueData2.get());
- uint32_t sizeOfUint64 = numeric_cast<uint32_t>(sizeof(uint64_t));
- uint32_t sizeOfUint32 = numeric_cast<uint32_t>(sizeof(uint32_t));
- uint32_t sizeOfUint16 = numeric_cast<uint32_t>(sizeof(uint16_t));
+ uint32_t sizeOfUint64 = armnn::numeric_cast<uint32_t>(sizeof(uint64_t));
+ uint32_t sizeOfUint32 = armnn::numeric_cast<uint32_t>(sizeof(uint32_t));
+ uint32_t sizeOfUint16 = armnn::numeric_cast<uint32_t>(sizeof(uint16_t));
// Offset index to point to mem address
uint32_t offset = 0;