extend PaddlePaddle elementwise broadcast type support (#17102)

* enable PaddlePaddle elementwise broadcast

* fix CI fail issue

* Apply suggestions from code review

* fix CI fail issue

* only B to A broadcast is supported for PDPD

* fix GPU plugin testcase fail issue

* keep PDPD broadcast_merge cpu plugin implement align with ov core

* add type prop test case for pdpd broadcast dst shape smaller than src shape
This commit is contained in:
Bo Liu
2023-05-23 18:25:56 +08:00
committed by GitHub
parent 04904e5147
commit 703e5421ca
11 changed files with 149 additions and 77 deletions

View File

@@ -85,7 +85,7 @@ INSTANTIATE_TEST_SUITE_P(smoke, eltwise_si_test,
{{{2, 1, 5}, data_types::f32, format::bfyx}, {{1, 4, 1}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{2, 4, 5}, data_types::f32, format::bfyx}, {}},
{{{1, 5, 1}, data_types::f32, format::bfyx}, {{5, 2, 1, 3}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{5, 2, 5, 3}, data_types::f32, format::bfyx}, {}},
{{{2, 3, 4, 5}, data_types::f32, format::bfyx}, {{4, 5}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::PDPD, -1}, {{2, 3, 4, 5}, data_types::f32, format::bfyx}, {}},
{{{2, 3, 4, 5}, data_types::f32, format::bfyx}, {{2, 3}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::PDPD}, {{2, 3, 4, 5}, data_types::f32, format::bfyx}, {}},
{{{2, 3, 4, 5}, data_types::f32, format::bfyx}, {{2, 3}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::PDPD, 0}, {{2, 3, 4, 5}, data_types::f32, format::bfyx}, {}},
{{{2, 3, 4, 5}, data_types::f32, format::bfyx}, {{3}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::PDPD, 1}, {{2, 3, 4, 5}, data_types::f32, format::bfyx}, {}},
{{{2, 3, 4, 5}, data_types::f32, format::bfyx}, {{5}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{2, 3, 4, 5}, data_types::f32, format::bfyx}, {}},
// test for dynamic shape
@@ -93,7 +93,7 @@ INSTANTIATE_TEST_SUITE_P(smoke, eltwise_si_test,
{{{2, -1, 5}, data_types::f32, format::bfyx}, {{1, 4, 1}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{2, 4, 5}, data_types::f32, format::bfyx}, {}},
{{PartialShape::dynamic(3), data_types::f32, format::bfyx}, {{1, 4, 1}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{-1, 4, -1}, data_types::f32, format::bfyx}, {}},
{{PartialShape::dynamic(3), data_types::f32, format::bfyx}, {{2, 1, 5}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{2, -1, 5}, data_types::f32, format::bfyx}, {}},
{{PartialShape::dynamic(3), data_types::f32, format::bfyx}, {{1, 4, 1}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::PDPD}, {PartialShape::dynamic(3), data_types::f32, format::bfyx}, {}},
{{PartialShape::dynamic(3), data_types::f32, format::bfyx}, {{1, 4, 1}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::PDPD}, {{-1, 4, -1}, data_types::f32, format::bfyx}, {}},
{{{-1, -1, 1024, 512}, data_types::f32, format::bfyx}, {{1, 1, 512}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{-1,-1,1024,512}, data_types::f32, format::bfyx}, {}},
{{{-1, -1, 768}, data_types::f32, format::bfyx}, {{768}, data_types::f32, format::bfyx}, eltwise_mode::sum, {AutoBroadcastType::NUMPY}, {{-1,-1,768}, data_types::f32, format::bfyx}, {}},
// test for output data type of logic and comparison operations

View File

@@ -97,7 +97,7 @@ INSTANTIATE_TEST_SUITE_P(smoke, select_test,
layout{ov::PartialShape{3, 2}, data_types::f32, format::bfyx}
},
{
layout{ov::PartialShape{2, 3 }, data_types::f32, format::bfyx},
layout{ov::PartialShape{ 4, 5}, data_types::f32, format::bfyx},
layout{ov::PartialShape{2, 3, 4, 5}, data_types::f32, format::bfyx},
layout{ov::PartialShape{ }, data_types::f32, format::bfyx},
ov::op::AutoBroadcastType::PDPD,
@@ -153,11 +153,11 @@ INSTANTIATE_TEST_SUITE_P(smoke, select_test,
layout{ov::PartialShape::dynamic(4), data_types::f32, format::bfyx}
},
{
layout{ov::PartialShape{2, 3 }, data_types::f32, format::bfyx},
layout{ov::PartialShape{2, 3, 4, 1}, data_types::f32, format::bfyx},
layout{ov::PartialShape{ 4, 5}, data_types::f32, format::bfyx},
layout{ov::PartialShape{2, 3, 4, 5}, data_types::f32, format::bfyx},
layout{ov::PartialShape::dynamic(4), data_types::f32, format::bfyx},
ov::op::AutoBroadcastType::PDPD,
layout{ov::PartialShape{2, 3, 4, 1}, data_types::f32, format::bfyx}
layout{ov::PartialShape{2, 3, 4, 5}, data_types::f32, format::bfyx}
},
{
layout{ov::PartialShape::dynamic(4), data_types::f32, format::bfyx},