Skip to content

Commit 5726bbd

Browse files
aobolenskpraasz
authored andcommitted
[CPU] Enable previously skipped elementwise tests (openvinotoolkit#31943)
### Tickets: - 105430
1 parent e7ebaf0 commit 5726bbd

File tree

1 file changed

+18
-8
lines changed
  • src/plugins/intel_cpu/tests/functional/custom/single_layer_tests/classes

1 file changed

+18
-8
lines changed

src/plugins/intel_cpu/tests/functional/custom/single_layer_tests/classes/eltwise.cpp

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include "openvino/core/type/element_type.hpp"
1212
#include "openvino/runtime/properties.hpp"
1313
#include "utils/cpu_test_utils.hpp"
14+
#include "utils/general_utils.h"
1415

1516
#if defined(OPENVINO_ARCH_RISCV64)
1617
# include "nodes/kernels/riscv64/cpu_isa_traits.hpp"
@@ -166,6 +167,19 @@ void EltwiseLayerCPUTest::SetUp() {
166167
rel_threshold = 0.05f;
167168
}
168169

170+
#if defined(OPENVINO_ARCH_ARM)
171+
// ARM32-only: Sub/Div may be decomposed or routed to different implementations
172+
// causing variability (binary->unary or ACL/ref). Keep tests stable but localized here.
173+
if (ov::intel_cpu::any_of(eltwiseType, utils::EltwiseTypes::SUBTRACT, utils::EltwiseTypes::DIVIDE)) {
174+
// If format expectations specify two inputs, but transforms reduce arity, limit to single input.
175+
if (inFmts.size() > 1) {
176+
inFmts.resize(1);
177+
}
178+
// Do not enforce specific primType (ACL vs REF) for Sub/Div on ARM32.
179+
selectedType = CPUTestsBase::any_type;
180+
}
181+
#endif
182+
169183
shapes.resize(2);
170184
switch (opType) {
171185
case ov::test::utils::OpType::SCALAR: {
@@ -340,10 +354,8 @@ const std::vector<utils::EltwiseTypes>& eltwiseOpTypesBinInp() {
340354
static const std::vector<utils::EltwiseTypes> eltwiseOpTypesBinInp = {
341355
utils::EltwiseTypes::ADD,
342356
utils::EltwiseTypes::MULTIPLY,
343-
#if defined(OPENVINO_ARCH_X86) || defined(OPENVINO_ARCH_X86_64)
344-
utils::EltwiseTypes::SUBTRACT, // TODO: Fix CVS-105430
345-
utils::EltwiseTypes::DIVIDE, // TODO: Fix CVS-105430
346-
#endif
357+
utils::EltwiseTypes::SUBTRACT,
358+
utils::EltwiseTypes::DIVIDE,
347359
utils::EltwiseTypes::FLOOR_MOD,
348360
utils::EltwiseTypes::SQUARED_DIFF,
349361
utils::EltwiseTypes::MOD,
@@ -355,6 +367,8 @@ const std::vector<utils::EltwiseTypes>& eltwiseOpTypesBinInpSnippets() {
355367
static const std::vector<utils::EltwiseTypes> eltwiseOpTypesBinInp = {
356368
utils::EltwiseTypes::ADD,
357369
utils::EltwiseTypes::MULTIPLY,
370+
utils::EltwiseTypes::SUBTRACT,
371+
utils::EltwiseTypes::DIVIDE,
358372
utils::EltwiseTypes::FLOOR_MOD,
359373
utils::EltwiseTypes::MOD,
360374
utils::EltwiseTypes::POWER,
@@ -375,9 +389,7 @@ const std::vector<utils::EltwiseTypes>& eltwiseOpTypesBinDyn() {
375389
static const std::vector<utils::EltwiseTypes> eltwiseOpTypesBinDyn = {
376390
utils::EltwiseTypes::ADD,
377391
utils::EltwiseTypes::MULTIPLY,
378-
#if defined(OPENVINO_ARCH_X86) || defined(OPENVINO_ARCH_X86_64) // TODO: Fix CVS-105430
379392
utils::EltwiseTypes::SUBTRACT,
380-
#endif
381393
utils::EltwiseTypes::SQUARED_DIFF,
382394
};
383395
return eltwiseOpTypesBinDyn;
@@ -451,10 +463,8 @@ const std::vector<utils::EltwiseTypes>& eltwiseOpTypesI32() {
451463
static const std::vector<utils::EltwiseTypes> eltwiseOpTypesI32 = {
452464
utils::EltwiseTypes::ADD,
453465
utils::EltwiseTypes::MULTIPLY,
454-
#if defined(OPENVINO_ARCH_X86) || defined(OPENVINO_ARCH_X86_64) // TODO: Fix CVS-105430
455466
utils::EltwiseTypes::SUBTRACT,
456467
utils::EltwiseTypes::DIVIDE,
457-
#endif
458468
utils::EltwiseTypes::SQUARED_DIFF,
459469
};
460470
return eltwiseOpTypesI32;

0 commit comments

Comments
 (0)