diff options
author | Gian Marco <gianmarco.iodice@arm.com> | 2017-11-09 14:02:20 +0000 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:35:24 +0000 |
commit | 9c45f56439f5a4aef68901dfe4b7b57d2a7ce85e (patch) | |
tree | 4c750e589be440017b6e46ed31dbc0850c38ad16 | |
parent | ab14c15dc9a0f55664fe523aed072fffa60da420 (diff) | |
download | ComputeLibrary-9c45f56439f5a4aef68901dfe4b7b57d2a7ce85e.tar.gz |
COMPMID-556 - Added 5x5 Direct Convolution benchmark for AlexNet
Change-Id: Ib92f62e8982a7f07799083ea41086e652437ab7e
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95100
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Reviewed-by: Pablo Tello <pablo.tello@arm.com>
-rw-r--r-- | tests/benchmark/NEON/DirectConvolutionLayer.cpp | 8 | ||||
-rw-r--r-- | tests/datasets/system_tests/alexnet/AlexNetConvolutionLayerDataset.h | 1 |
2 files changed, 6 insertions, 3 deletions
diff --git a/tests/benchmark/NEON/DirectConvolutionLayer.cpp b/tests/benchmark/NEON/DirectConvolutionLayer.cpp index a8e170f137..5096eaff6e 100644 --- a/tests/benchmark/NEON/DirectConvolutionLayer.cpp +++ b/tests/benchmark/NEON/DirectConvolutionLayer.cpp @@ -48,7 +48,9 @@ namespace #ifdef ARM_COMPUTE_ENABLE_F16 const auto data_types = framework::dataset::make("DataType", { DataType::QS8, DataType::F16, DataType::F32 }); #else /* ARM_COMPUTE_ENABLE_F16 */ -const auto data_types = framework::dataset::make("DataType", { DataType::QS8, DataType::F32 }); +// Special data types for AlexNet as 5x5 direct convolution is not supported for Fixed Point +const auto data_types_alexnet = framework::dataset::make("DataType", { DataType::F32 }); +const auto data_types = framework::dataset::make("DataType", { DataType::QS8, DataType::F32 }); #endif /* ARM_COMPUTE_ENABLE_F16 */ } // namespace @@ -57,7 +59,7 @@ using NEConvolutionLayerFixture = ConvolutionLayerFixture<Tensor, NEDirectConvol TEST_SUITE(NEON) REGISTER_FIXTURE_DATA_TEST_CASE(AlexNetDirectConvolutionLayer, NEConvolutionLayerFixture, framework::DatasetMode::ALL, - framework::dataset::combine(framework::dataset::combine(datasets::AlexNetDirectConvolutionLayerDataset(), data_types), + framework::dataset::combine(framework::dataset::combine(datasets::AlexNetDirectConvolutionLayerDataset(), data_types_alexnet), framework::dataset::make("Batches", 1))); REGISTER_FIXTURE_DATA_TEST_CASE(GoogLeNetInceptionV1DirectConvolutionLayer, NEConvolutionLayerFixture, framework::DatasetMode::ALL, @@ -74,7 +76,7 @@ REGISTER_FIXTURE_DATA_TEST_CASE(SqueezeNetDirectConvolutionLayer, NEConvolutionL TEST_SUITE(NIGHTLY) REGISTER_FIXTURE_DATA_TEST_CASE(AlexNetDirectConvolutionLayer, NEConvolutionLayerFixture, framework::DatasetMode::NIGHTLY, - framework::dataset::combine(framework::dataset::combine(datasets::AlexNetDirectConvolutionLayerDataset(), data_types), + framework::dataset::combine(framework::dataset::combine(datasets::AlexNetDirectConvolutionLayerDataset(), data_types_alexnet), framework::dataset::make("Batches", { 4, 8 }))); REGISTER_FIXTURE_DATA_TEST_CASE(GoogLeNetInceptionV1DirectConvolutionLayer, NEConvolutionLayerFixture, framework::DatasetMode::NIGHTLY, diff --git a/tests/datasets/system_tests/alexnet/AlexNetConvolutionLayerDataset.h b/tests/datasets/system_tests/alexnet/AlexNetConvolutionLayerDataset.h index c4b98f521a..0b2058896f 100644 --- a/tests/datasets/system_tests/alexnet/AlexNetConvolutionLayerDataset.h +++ b/tests/datasets/system_tests/alexnet/AlexNetConvolutionLayerDataset.h @@ -55,6 +55,7 @@ class AlexNetDirectConvolutionLayerDataset final : public ConvolutionLayerDatase public: AlexNetDirectConvolutionLayerDataset() { + add_config(TensorShape(27U, 27U, 48U), TensorShape(5U, 5U, 48U, 128U), TensorShape(128U), TensorShape(27U, 27U, 128U), PadStrideInfo(1, 1, 2, 2)); add_config(TensorShape(13U, 13U, 256U), TensorShape(3U, 3U, 256U, 384U), TensorShape(384U), TensorShape(13U, 13U, 384U), PadStrideInfo(1, 1, 1, 1)); add_config(TensorShape(13U, 13U, 192U), TensorShape(3U, 3U, 192U, 192U), TensorShape(192U), TensorShape(13U, 13U, 192U), PadStrideInfo(1, 1, 1, 1)); add_config(TensorShape(13U, 13U, 192U), TensorShape(3U, 3U, 192U, 128U), TensorShape(128U), TensorShape(13U, 13U, 128U), PadStrideInfo(1, 1, 1, 1)); |