diff options
author | Giorgio Arena <giorgio.arena@arm.com> | 2021-01-06 11:34:57 +0000 |
---|---|---|
committer | Giorgio Arena <giorgio.arena@arm.com> | 2021-01-07 09:56:45 +0000 |
commit | a8e2aeb7d2d46a7ab0e9523de145af9920fc1fa3 (patch) | |
tree | 21547ff0230f1cd842bae21817d4f54c6888664a /tests/validation | |
parent | c5a613982c12977cef2e2e16aaf9c50fa1629a88 (diff) | |
download | ComputeLibrary-a8e2aeb7d2d46a7ab0e9523de145af9920fc1fa3.tar.gz |
Generalize custom uniform generator for floating point data types with 16 bits
- Change name of uniform_real_distribution_fp16 to uniform_real_distribution_16bit, and make it also accept bfloat16 data type
Resolves: COMPMID-4057
Signed-off-by: Giorgio Arena <giorgio.arena@arm.com>
Change-Id: Id2f1a84b9c9f09cb260a0785add4fc5954d5853a
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4768
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'tests/validation')
14 files changed, 22 insertions, 17 deletions
diff --git a/tests/validation/fixtures/ArgMinMaxFixture.h b/tests/validation/fixtures/ArgMinMaxFixture.h index fdf9ac4e5b..f140c9846b 100644 --- a/tests/validation/fixtures/ArgMinMaxFixture.h +++ b/tests/validation/fixtures/ArgMinMaxFixture.h @@ -61,7 +61,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, 0); break; } diff --git a/tests/validation/fixtures/ConvertFullyConnectedWeightsFixture.h b/tests/validation/fixtures/ConvertFullyConnectedWeightsFixture.h index a4705b1250..d7984830f5 100644 --- a/tests/validation/fixtures/ConvertFullyConnectedWeightsFixture.h +++ b/tests/validation/fixtures/ConvertFullyConnectedWeightsFixture.h @@ -67,7 +67,7 @@ protected: } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/ConvolutionLayerFixture.h b/tests/validation/fixtures/ConvolutionLayerFixture.h index 210afbef5b..006c5eb705 100644 --- a/tests/validation/fixtures/ConvolutionLayerFixture.h +++ b/tests/validation/fixtures/ConvolutionLayerFixture.h @@ -141,9 +141,14 @@ protected: break; } case DataType::BFLOAT16: + { + arm_compute::utils::uniform_real_distribution_16bit<bfloat16> distribution{ -1.0f, 1.0f }; + library->fill(tensor, distribution, i); + break; + } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/DeconvolutionLayerFixture.h b/tests/validation/fixtures/DeconvolutionLayerFixture.h index 6394caf457..6ea2335ae9 100644 --- a/tests/validation/fixtures/DeconvolutionLayerFixture.h +++ b/tests/validation/fixtures/DeconvolutionLayerFixture.h @@ -91,7 +91,7 @@ protected: } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/DepthwiseConvolutionLayerFixture.h b/tests/validation/fixtures/DepthwiseConvolutionLayerFixture.h index 09f8cb4c06..bb1c105555 100644 --- a/tests/validation/fixtures/DepthwiseConvolutionLayerFixture.h +++ b/tests/validation/fixtures/DepthwiseConvolutionLayerFixture.h @@ -99,7 +99,7 @@ protected: } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } @@ -354,7 +354,7 @@ protected: } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/DirectConvolutionLayerFixture.h b/tests/validation/fixtures/DirectConvolutionLayerFixture.h index 1967e8dc4d..8e4de77535 100644 --- a/tests/validation/fixtures/DirectConvolutionLayerFixture.h +++ b/tests/validation/fixtures/DirectConvolutionLayerFixture.h @@ -109,7 +109,7 @@ protected: } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/DirectConvolutionLayerTensorShiftFixture.h b/tests/validation/fixtures/DirectConvolutionLayerTensorShiftFixture.h index 7e891fe682..f39595f0de 100644 --- a/tests/validation/fixtures/DirectConvolutionLayerTensorShiftFixture.h +++ b/tests/validation/fixtures/DirectConvolutionLayerTensorShiftFixture.h @@ -94,7 +94,7 @@ protected: } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ float(-1.0f), float(1.0f) }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ float(-1.0f), float(1.0f) }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/ElementWiseUnaryFixture.h b/tests/validation/fixtures/ElementWiseUnaryFixture.h index 26484be2fa..f414daf8f7 100644 --- a/tests/validation/fixtures/ElementWiseUnaryFixture.h +++ b/tests/validation/fixtures/ElementWiseUnaryFixture.h @@ -76,7 +76,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -2.0f, 2.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -2.0f, 2.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/FFTFixture.h b/tests/validation/fixtures/FFTFixture.h index 37c2f2faec..86a97272a0 100644 --- a/tests/validation/fixtures/FFTFixture.h +++ b/tests/validation/fixtures/FFTFixture.h @@ -63,7 +63,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -5.0f, 5.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -5.0f, 5.0f }; library->fill(tensor, distribution, 0); break; } @@ -151,7 +151,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/GEMMFixture.h b/tests/validation/fixtures/GEMMFixture.h index 0c2f0a410e..192e77e5aa 100644 --- a/tests/validation/fixtures/GEMMFixture.h +++ b/tests/validation/fixtures/GEMMFixture.h @@ -64,7 +64,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ float(lo), float(hi) }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ float(lo), float(hi) }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/GEMMInterleave4x4Fixture.h b/tests/validation/fixtures/GEMMInterleave4x4Fixture.h index 30708e4e7d..1ce0eafead 100644 --- a/tests/validation/fixtures/GEMMInterleave4x4Fixture.h +++ b/tests/validation/fixtures/GEMMInterleave4x4Fixture.h @@ -64,7 +64,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/GEMMLowpFixture.h b/tests/validation/fixtures/GEMMLowpFixture.h index b9140ebd3e..24c1a24d40 100644 --- a/tests/validation/fixtures/GEMMLowpFixture.h +++ b/tests/validation/fixtures/GEMMLowpFixture.h @@ -79,7 +79,7 @@ void fill(U &&tensor, int i) } case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/GEMMTranspose1xWFixture.h b/tests/validation/fixtures/GEMMTranspose1xWFixture.h index 3d6ac76681..2d2e70697a 100644 --- a/tests/validation/fixtures/GEMMTranspose1xWFixture.h +++ b/tests/validation/fixtures/GEMMTranspose1xWFixture.h @@ -65,7 +65,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ -1.0f, 1.0f }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ -1.0f, 1.0f }; library->fill(tensor, distribution, i); break; } diff --git a/tests/validation/fixtures/WinogradConvolutionLayerFixture.h b/tests/validation/fixtures/WinogradConvolutionLayerFixture.h index 5a40815a67..e1cc953375 100644 --- a/tests/validation/fixtures/WinogradConvolutionLayerFixture.h +++ b/tests/validation/fixtures/WinogradConvolutionLayerFixture.h @@ -177,7 +177,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ float(min), float(max) }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ float(min), float(max) }; library->fill(tensor, distribution, i); break; } @@ -500,7 +500,7 @@ protected: { case DataType::F16: { - arm_compute::utils::uniform_real_distribution_fp16 distribution{ float(min), float(max) }; + arm_compute::utils::uniform_real_distribution_16bit<half> distribution{ float(min), float(max) }; library->fill(tensor, distribution, i); break; } |