aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDavid Svantesson <david.svantesson@arm.com>2023-02-22 11:08:57 +0000
committerDavid Svantesson <david.svantesson@arm.com>2023-02-24 14:32:23 +0000
commit4537089a5cd17e49f5bb8d5e7f8374e451872387 (patch)
treeb475936988d47584a182cee0808172bac0023804 /tests
parent08bc348b9282f73ddd53795e10161104d9a4fd51 (diff)
downloadComputeLibrary-4537089a5cd17e49f5bb8d5e7f8374e451872387.tar.gz
Fixes for CMake and Bazel builds, tests failing in scons
- Fix 4 failing tests for multi_isa builds when experimental_fixed_format_kernels=1 - Fixes for CMake and Bazel builds to pass validation tests - Update documentation, remove “-DCPPTHREADS=1” flag from CMake build example Partially resolves: ONCPUML-1181 Signed-off-by: David Svantesson <david.svantesson@arm.com> Change-Id: I7101676260a0adcb7b6ff6f4342ae36f921e7120 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/9189 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Gunes Bayir <gunes.bayir@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Benchmark: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/BUILD.bazel65
-rw-r--r--tests/validation/NEON/ConvolutionLayer.cpp10
2 files changed, 69 insertions, 6 deletions
diff --git a/tests/BUILD.bazel b/tests/BUILD.bazel
index 57ea3f6576..8122652991 100644
--- a/tests/BUILD.bazel
+++ b/tests/BUILD.bazel
@@ -35,8 +35,23 @@ cc_library(
"validation/**/*.h",
]),
copts = [
- "-march=armv8.2-a+fp16",
- ],
+ "-march=armv8.2-a+fp16",
+ ] + select({
+ "//:debug_flag": [
+ "-O0",
+ "-g",
+ "-gdwarf-2",
+ ],
+ "//conditions:default": ["-O3"],
+ }) +
+ select({
+ "//:openmp_flag": ["-fopenmp"],
+ "//conditions:default": [],
+ }) +
+ select({
+ "//:Werror_flag": ["-Werror"],
+ "//conditions:default": [],
+ }),
linkstatic = True,
deps = [
"//:arm_compute",
@@ -60,9 +75,23 @@ cc_binary(
"instruments/*.h",
]),
copts = [
- "-march=armv8.2-a+fp16",
- "-ffp-contract=off",
- ],
+ "-march=armv8.2-a+fp16",
+ ] + select({
+ "//:debug_flag": [
+ "-O0",
+ "-g",
+ "-gdwarf-2",
+ ],
+ "//conditions:default": ["-O3"],
+ }) +
+ select({
+ "//:openmp_flag": ["-fopenmp"],
+ "//conditions:default": [],
+ }) +
+ select({
+ "//:Werror_flag": ["-Werror"],
+ "//conditions:default": [],
+ }),
linkstatic = True,
deps = [
":validation_framework",
@@ -71,6 +100,13 @@ cc_binary(
"//:common_defines",
"//tests/framework",
],
+ local_defines = [] +
+ select({
+ "//:bf16_validation_flag": [
+ "ARM_COMPUTE_ENABLE_BF16",
+ ],
+ "//conditions:default": [],
+ })
)
#---------------------------------------------------------------------
@@ -82,7 +118,24 @@ cc_binary(
"benchmark/NEON/*.cpp",
"*.cpp",
]),
- copts = ["-march=armv8.2-a+fp16"],
+ copts = [
+ "-march=armv8.2-a+fp16",
+ ] + select({
+ "//:debug_flag": [
+ "-O0",
+ "-g",
+ "-gdwarf-2",
+ ],
+ "//conditions:default": ["-O3"],
+ }) +
+ select({
+ "//:openmp_flag": ["-fopenmp"],
+ "//conditions:default": [],
+ }) +
+ select({
+ "//:Werror_flag": ["-Werror"],
+ "//conditions:default": [],
+ }),
linkstatic = True,
deps = [
":arm_compute_validation",
diff --git a/tests/validation/NEON/ConvolutionLayer.cpp b/tests/validation/NEON/ConvolutionLayer.cpp
index 08b6a02375..ea161a11ab 100644
--- a/tests/validation/NEON/ConvolutionLayer.cpp
+++ b/tests/validation/NEON/ConvolutionLayer.cpp
@@ -530,6 +530,7 @@ TEST_SUITE_END() // FP16
TEST_SUITE_END() // WinogradLayer
#ifdef ARM_COMPUTE_ENABLE_FIXED_FORMAT_KERNELS
+TEST_SUITE(FIXED_FORMAT_KERNELS)
TEST_SUITE(VariableWeightUtils)
// UC2_1_* tests: the user requests a specific fixed format, but there is no kernel that supports it.
@@ -588,6 +589,8 @@ FIXTURE_DATA_TEST_CASE(UC2_2_NEGEMMConvolutionLayer, HasOptImplFixtureNoFastMath
ARM_COMPUTE_EXPECT(_computed_weight_format == arm_compute::WeightFormat::OHWIo4, framework::LogLevel::ERRORS);
}
+#if defined(ARM_COMPUTE_ENABLE_BF16)
+
FIXTURE_DATA_TEST_CASE(UC2_2_CpuGemmConv2d_FastMath, HasOptImplFixtureFastMath<cpu::CpuGemmConv2d>, framework::DatasetMode::ALL,
combine(framework::dataset::make("DataType", { DataType::F32 }),
framework::dataset::make("QueryWeightFormat", { arm_compute::WeightFormat::OHWIo8i4_bf16 })))
@@ -604,6 +607,8 @@ FIXTURE_DATA_TEST_CASE(UC2_2_NEGEMMConvolutionLayer_FastMath, HasOptImplFixtureF
ARM_COMPUTE_EXPECT(_computed_weight_format == arm_compute::WeightFormat::OHWIo8i4_bf16, framework::LogLevel::ERRORS);
}
+#endif // ARM_COMPUTE_ENABLE_BF16
+
// UC3_1_* tests: the user queries for ANY fixed format, but there is
// no kernel that support the use case specified by the user (for
// example, there is no fixed format kernel for the datatype of the
@@ -664,6 +669,8 @@ FIXTURE_DATA_TEST_CASE(UC3_2_NEGEMMConvolutionLayer, HasOptImplFixtureNoFastMath
ARM_COMPUTE_EXPECT(_computed_weight_format != arm_compute::WeightFormat::UNSPECIFIED, framework::LogLevel::ERRORS);
}
+#if defined(ARM_COMPUTE_ENABLE_BF16)
+
FIXTURE_DATA_TEST_CASE(UC3_2_CpuGemmConv2d_FastMath, HasOptImplFixtureFastMath<cpu::CpuGemmConv2d>, framework::DatasetMode::ALL,
combine(framework::dataset::make("DataType", { DataType::F32 }),
framework::dataset::make("QueryWeightFormat", { arm_compute::WeightFormat::ANY })))
@@ -684,6 +691,8 @@ FIXTURE_DATA_TEST_CASE(UC3_2_NEGEMMConvolutionLayer_FastMath, HasOptImplFixtureF
ARM_COMPUTE_EXPECT(arm_compute::is_fixed_format_fast_math(_computed_weight_format), framework::LogLevel::ERRORS);
}
+#endif // ARM_COMPUTE_ENABLE_BF16
+
namespace
{
using TestCaseType = std::tuple<TensorShape, TensorShape, arm_compute::WeightFormat>;
@@ -839,6 +848,7 @@ FIXTURE_DATA_TEST_CASE(NEGEMMRunSmallFloatFastMath, NEGEMMVarWidthFastMath<float
#endif // ARM_COMPUTE_ENABLE_BF16
TEST_SUITE_END() // ExperimentalNEAPIVariableWeightWithFixtures
+TEST_SUITE_END() // FIXED_FORMAT_KERNELS
#endif // ARM_COMPUTE_ENABLE_FIXED_FORMAT_KERNELS