From c7b82f1319ad85bc2d203bf7f3e18341792eed26 Mon Sep 17 00:00:00 2001 From: Sanghoon Lee Date: Fri, 6 Jul 2018 13:27:27 +0100 Subject: COMPMID-761: Add CL/NEON ColorConvert benchmark tests Change-Id: I25b42c5b74567bb50444da393d723b7f5cedafad Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/138694 Tested-by: Jenkins Reviewed-by: Anthony Barbier --- tests/validation/NEON/ColorConvert.cpp | 83 ++++++++++++++++++---------------- 1 file changed, 43 insertions(+), 40 deletions(-) (limited to 'tests/validation/NEON') diff --git a/tests/validation/NEON/ColorConvert.cpp b/tests/validation/NEON/ColorConvert.cpp index ec2f1b8edc..c34df2b557 100644 --- a/tests/validation/NEON/ColorConvert.cpp +++ b/tests/validation/NEON/ColorConvert.cpp @@ -43,25 +43,29 @@ namespace constexpr AbsoluteTolerance tolerance_nv(2); // Input data sets -const auto ColorConvertRGBADataset = combine(framework::dataset::make("FormatType", { Format::RGBA8888 }), - framework::dataset::make("FormatType", { Format::RGB888 })); -const auto ColorConvertYUVDataset = combine(framework::dataset::make("FormatType", { Format::YUYV422, Format::UYVY422 }), - framework::dataset::make("FormatType", { Format::RGB888, Format::RGBA8888 })); +const auto RGBDataset = framework::dataset::make("FormatType", { Format::RGB888, Format::RGBA8888 }); +const auto YUYVDataset = framework::dataset::make("FormatType", { Format::YUYV422, Format::UYVY422 }); -const auto ColorConvertYUVPlanarDataset = combine(framework::dataset::make("FormatType", { Format::IYUV, Format::NV12, Format::NV21 }), - framework::dataset::make("FormatType", { Format::RGB888, Format::RGBA8888 })); +const auto ColorConvert_RGBA_to_RGB = combine(framework::dataset::make("FormatType", { Format::RGBA8888 }), + framework::dataset::make("FormatType", { Format::RGB888 })); -const auto ColorConvertRGBDataset = combine(framework::dataset::make("FormatType", { Format::RGB888 }), - framework::dataset::make("FormatType", { Format::RGBA8888 })); +const auto ColorConvert_RGB_to_RGBA = combine(framework::dataset::make("FormatType", { Format::RGB888 }), + framework::dataset::make("FormatType", { Format::RGBA8888 })); -const auto ColorConvertNVDataset = combine(framework::dataset::make("FormatType", { Format::RGB888, Format::RGBA8888 }), - framework::dataset::make("FormatType", { Format::NV12, Format::IYUV, Format::YUV444 })); +const auto ColorConvert_YUYVDataset_to_RGBDataset = combine(YUYVDataset, + RGBDataset); -const auto ColorConvertYUYVtoNVDataset = combine(framework::dataset::make("FormatType", { Format::UYVY422, Format::YUYV422 }), - framework::dataset::make("FormatType", { Format::NV12, Format::IYUV })); +const auto ColorConvert_YUVPlanar_to_RGBDataset = combine(framework::dataset::make("FormatType", { Format::IYUV, Format::NV12, Format::NV21 }), + RGBDataset); -const auto ColorConvertNVtoYUVDataset = combine(framework::dataset::make("FormatType", { Format::NV12, Format::NV21 }), - framework::dataset::make("FormatType", { Format::IYUV, Format::YUV444 })); +const auto ColorConvert_RGBDataset_to_NVDataset = combine(RGBDataset, + framework::dataset::make("FormatType", { Format::NV12, Format::IYUV, Format::YUV444 })); + +const auto ColorConvert_YUYVDataset_to_NVDataset = combine(YUYVDataset, + framework::dataset::make("FormatType", { Format::NV12, Format::IYUV })); + +const auto ColorConvert_NVDataset_to_YUVDataset = combine(framework::dataset::make("FormatType", { Format::NV12, Format::NV21 }), + framework::dataset::make("FormatType", { Format::IYUV, Format::YUV444 })); inline void validate_configuration(const TensorShape &shape, Format src_format, Format dst_format) { @@ -127,43 +131,43 @@ template using NEColorConvertFixture = ColorConvertValidationFixture; TEST_SUITE(Configuration) -DATA_TEST_CASE(RGBA, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvertRGBADataset), +DATA_TEST_CASE(RGBA, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvert_RGBA_to_RGB), shape, src_format, dst_format) { validate_configuration(shape, src_format, dst_format); } -DATA_TEST_CASE(YUV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvertYUVDataset), +DATA_TEST_CASE(RGB, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvert_RGB_to_RGBA), shape, src_format, dst_format) { validate_configuration(shape, src_format, dst_format); } -DATA_TEST_CASE(YUVPlanar, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvertYUVPlanarDataset), +DATA_TEST_CASE(YUV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvert_YUYVDataset_to_RGBDataset), shape, src_format, dst_format) { validate_configuration(shape, src_format, dst_format); } -DATA_TEST_CASE(RGB, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvertRGBDataset), +DATA_TEST_CASE(YUVPlanar, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvert_YUVPlanar_to_RGBDataset), shape, src_format, dst_format) { validate_configuration(shape, src_format, dst_format); } -DATA_TEST_CASE(NV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvertNVDataset), +DATA_TEST_CASE(NV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvert_RGBDataset_to_NVDataset), shape, src_format, dst_format) { validate_configuration(shape, src_format, dst_format); } -DATA_TEST_CASE(YUVtoNV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvertYUYVtoNVDataset), +DATA_TEST_CASE(YUYVtoNV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvert_YUYVDataset_to_NVDataset), shape, src_format, dst_format) { validate_configuration(shape, src_format, dst_format); } -DATA_TEST_CASE(NVtoYUV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvertNVtoYUVDataset), +DATA_TEST_CASE(NVtoYUV, framework::DatasetMode::ALL, combine(concat(datasets::Small2DShapes(), datasets::Large2DShapes()), ColorConvert_NVDataset_to_YUVDataset), shape, src_format, dst_format) { validate_configuration(shape, src_format, dst_format); @@ -171,7 +175,7 @@ DATA_TEST_CASE(NVtoYUV, framework::DatasetMode::ALL, combine(concat(datasets::Sm TEST_SUITE_END() TEST_SUITE(RGBA) -FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvertRGBADataset)) +FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvert_RGBA_to_RGB)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -180,7 +184,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::Data } } -FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvertRGBADataset)) +FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvert_RGBA_to_RGB)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -190,8 +194,8 @@ FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::Data } TEST_SUITE_END() -TEST_SUITE(YUV) -FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvertYUVDataset)) +TEST_SUITE(RGB) +FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvert_RGB_to_RGBA)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -199,7 +203,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::Data validate(Accessor(*_target.plane(plane_idx)), _reference[plane_idx]); } } -FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvertYUVDataset)) +FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvert_RGB_to_RGBA)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -207,11 +211,10 @@ FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::Data validate(Accessor(*_target.plane(plane_idx)), _reference[plane_idx]); } } - TEST_SUITE_END() -TEST_SUITE(YUVPlanar) -FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvertYUVPlanarDataset)) +TEST_SUITE(YUV) +FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvert_YUYVDataset_to_RGBDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -219,7 +222,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::Data validate(Accessor(*_target.plane(plane_idx)), _reference[plane_idx]); } } -FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvertYUVPlanarDataset)) +FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvert_YUYVDataset_to_RGBDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -229,8 +232,8 @@ FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::Data } TEST_SUITE_END() -TEST_SUITE(RGB) -FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvertRGBDataset)) +TEST_SUITE(YUVPlanar) +FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvert_YUVPlanar_to_RGBDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -238,7 +241,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::Data validate(Accessor(*_target.plane(plane_idx)), _reference[plane_idx]); } } -FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvertRGBDataset)) +FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvert_YUVPlanar_to_RGBDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -249,7 +252,7 @@ FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::Data TEST_SUITE_END() TEST_SUITE(NV) -FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvertNVDataset)) +FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvert_RGBDataset_to_NVDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -258,7 +261,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::Data } } -FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvertNVDataset)) +FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvert_RGBDataset_to_NVDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -268,8 +271,8 @@ FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::Data } TEST_SUITE_END() -TEST_SUITE(YUVtoNV) -FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvertYUYVtoNVDataset)) +TEST_SUITE(YUYVtoNV) +FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvert_YUYVDataset_to_NVDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -278,7 +281,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::Data } } -FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvertYUYVtoNVDataset)) +FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvert_YUYVDataset_to_NVDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -289,7 +292,7 @@ FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::Data TEST_SUITE_END() TEST_SUITE(NVtoYUV) -FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvertNVtoYUVDataset)) +FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::DatasetMode::PRECOMMIT, combine(datasets::Small2DShapes(), ColorConvert_NVDataset_to_YUVDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) @@ -297,7 +300,7 @@ FIXTURE_DATA_TEST_CASE(RunSmall, NEColorConvertFixture, framework::Data validate(Accessor(*_target.plane(plane_idx)), _reference[plane_idx]); } } -FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvertNVtoYUVDataset)) +FIXTURE_DATA_TEST_CASE(RunLarge, NEColorConvertFixture, framework::DatasetMode::NIGHTLY, combine(datasets::Large2DShapes(), ColorConvert_NVDataset_to_YUVDataset)) { // Validate output for(unsigned int plane_idx = 0; plane_idx < _dst_num_planes; ++plane_idx) -- cgit v1.2.1