From 996b15ccf256d1a310bc7566827ae66ef2a74492 Mon Sep 17 00:00:00 2001 From: Irina Efode Date: Mon, 4 Oct 2021 14:34:50 +0300 Subject: [PATCH] [IE TEST] Enable support of Dynamic shapes in IE TEST infra with examples (#7718) * Squashed commit of the following: commit 69d82175a815a8073b96cae0ee551852d32ae802 Merge: 4c5eb0f8f 068d31511 Author: Steve Yoo Date: Tue Sep 28 19:07:37 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 4c5eb0f8f476e1bf0cba71d871a93c9138a0d6cb Author: Steve Yoo Date: Tue Sep 28 19:06:16 2021 +0900 Build all (Multiple target shape inputs removed) commit dd3d17c85f09c7074cf0ab98654420d0aad1ba49 Merge: 0870cc6cc 1d3df63d6 Author: Steve Yoo Date: Mon Sep 27 20:29:47 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 0870cc6cc17b47dc259352bb76fd75edbb7edafa Author: Steve Yoo Date: Mon Sep 27 20:23:27 2021 +0900 While working on applying multiple target shapes to templateFuncTests, still failed commit e73a9741deff84a5849e87c54b14637cfbcc93c5 Merge: 20ea316b0 3bf34b116 Author: Steve Yoo Date: Mon Sep 27 16:54:16 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 20ea316b0d06d82aeafd9d85e129f5310b28fc86 Author: Steve Yoo Date: Mon Sep 27 16:52:39 2021 +0900 Apply Eltwise stype input shape to cpuFuncTests commit 080228297247e494b968177681f23599de3687d6 Author: Steve Yoo Date: Mon Sep 27 14:59:00 2021 +0900 Apply Eltwise input shape to templateFuncTests Modify GenerateInputs() to use functionRefs commit 25c399d922a50262590eed6da939a73b69f6041b Merge: ab476a9ba b3050c268 Author: Steve Yoo Date: Fri Sep 24 14:45:01 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit ab476a9ba36ffa5d5b9703eab4c9bce3c8b7649f Author: Steve Yoo Date: Fri Sep 24 14:44:23 2021 +0900 Add functionRefs for PrePostProcessTest commit 451ce9096deecb051404130a9e4cff3a9b6963b1 Merge: 5710141cd 846c9c91f Author: Steve Yoo Date: Fri Sep 24 12:20:34 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 5710141cd8a89ada4f5cf289c53559479b7dde6e Author: Steve Yoo Date: Fri Sep 24 12:16:06 2021 +0900 templateFuncTests * Remove StaticShape and add DynamicShape to make existing test cases static default * Fix typos cpuFuncTests * Add functionRefs to each case commit c3b87f098d439e6e4fd5f96e64a2ab473ce218c0 Author: Steve Yoo Date: Thu Sep 23 12:51:40 2021 +0900 Fix to use ngraph::clone_function() commit fa7e87b1469be04cad6e41c08df95d9f87d21dee Merge: a8890950d d7dfce209 Author: Steve Yoo Date: Thu Sep 23 10:47:15 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit a8890950d315027a89b7a6c189b5851d1c334085 Merge: ceb802d97 5847b35ed Author: Steve Yoo Date: Thu Sep 16 19:24:08 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit ceb802d9781c3305eb9751bdbe5c90eb96b614df Author: Steve Yoo Date: Thu Sep 16 19:24:00 2021 +0900 templateFuncTest runs except multiple input shape cases commit 8adbaba71d877ed74be023fcb6c5f0c0f7ab3793 Merge: d11e3e917 f44369ce4 Author: Steve Yoo Date: Mon Sep 13 15:30:48 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit d11e3e917e5fb83c23cb4e80a59c792059006fb3 Author: Steve Yoo Date: Mon Sep 13 15:30:27 2021 +0900 ConvolutionLayerTest for dynamic shape case (Test only) commit d8eaf21acd7c7682c39820b0263bf456c6299a80 Author: Steve Yoo Date: Mon Sep 13 14:41:38 2021 +0900 ConvolutionLayerTest for dynamic shape case commit fe57d0faa6562cfa902c4456814c2f0883b6bbce Merge: 39a691ab9 7a392253d Author: Steve Yoo Date: Mon Sep 13 09:59:44 2021 +0900 Merge branch 'master' into sy/ilyachur/draft_dynamic_plugin_rebased commit 7a392253d7e59f9b742ef6f136ee4689e2bce658 Merge: b8966457b 021639a04 Author: Steve Yoo Date: Mon Sep 13 09:59:01 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 39a691ab9533503871697eee36158d252b70420e Author: Steve Yoo Date: Mon Sep 13 09:55:38 2021 +0900 Remove redundant line commit 109cafeffea18d2d374ae72e0d630d51e601e9af Merge: 0245e05cc b8966457b Author: Steve Yoo Date: Thu Sep 9 10:25:36 2021 +0900 Merge branch 'master' into sy/ilyachur/draft_dynamic_plugin_rebased commit b8966457b9236a1397255209ee963362f4ce0456 Merge: 904384fee 1c1401b06 Author: Steve Yoo Date: Thu Sep 9 10:24:37 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 0245e05cc852cda081d273cb2ea71eacdb3438f4 Author: Steve Yoo Date: Thu Sep 9 10:18:54 2021 +0900 Remove comments used for indivisual testing Change unproper function names Remove unnecessary template<> commit 0854f07291abc4cf2e3d223103533e8e9fdc30ef Author: Steve Yoo Date: Fri Sep 3 13:31:22 2021 +0900 ConvolutionLayerTest and SoftMaxLayerTest on template_plugin for dynamic shapes rebased commit 904384fee3c86b6e3f276ce637023964c7ea1e40 Merge: 4bf45de5d b78f228fa Author: Steve Yoo Date: Fri Sep 3 09:11:44 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 4bf45de5dc2bd53de1c5385407c39f9ca8db884d Merge: 18476fe1b 07f7061f9 Author: Steve Yoo Date: Thu Sep 2 08:54:23 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 18476fe1b9dd1a39d35b1380f56ab19783fc9d8b Merge: e92f5928d f77d838e6 Author: Steve Yoo Date: Mon Aug 23 09:48:34 2021 +0900 Merge remote-tracking branch 'upstream/master' commit e92f5928dcd779f147effc6b95ba019bea583d6b Merge: ef937a5a5 2fefe1164 Author: Steve Yoo Date: Fri Aug 20 14:40:00 2021 +0900 Merge remote-tracking branch 'upstream/master' commit ef937a5a52b6d15af7fe1a3e5f2ca718d19b0a7e Merge: 04fed4c2a 184b3cbe4 Author: Steve Yoo Date: Fri Aug 20 13:32:53 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 04fed4c2afa45d530da5e251aa93709c215272a1 Merge: 508c61615 39131968c Author: Steve Yoo Date: Fri Aug 13 13:27:26 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 508c616151f3b715b838bccdac47bede71d07a9c Merge: 0647e6827 273c7188a Author: Steve Yoo Date: Fri Aug 13 10:49:35 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 0647e68277d9cd1f21d4aa6dab9bac5a53657735 Merge: 89ba7c1bf 04ff7a6ed Author: Steve Yoo Date: Wed Aug 11 13:39:51 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 89ba7c1bf166e9f860a0979943599a147b4ec9ba Merge: ebdbea67c b11a2220b Author: Steve Yoo Date: Mon Aug 9 09:01:44 2021 +0900 Merge remote-tracking branch 'upstream/master' commit ebdbea67cbdef3bfbacc5810df469d0a111f844d Merge: 4880bd11d d921e7a9c Author: Steve Yoo Date: Mon Jul 26 11:57:49 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 4880bd11d4fe3fbb3d5b1d440ffe204b62c4bb16 Merge: eef72406c 1e1e3bfff Author: Steve Yoo Date: Thu Jul 22 14:58:56 2021 +0900 Merge remote-tracking branch 'upstream/master' commit eef72406cc8cac5a6021184ed97cecd86bd8db58 Merge: 9ccacedef 2a15e3e79 Author: Steve Yoo Date: Fri Jul 16 12:58:14 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 9ccacedefef5e86289d4204952375cbf06ddb05c Merge: 14020554d c14edd413 Author: Steve Yoo Date: Thu Jul 15 13:48:24 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 14020554d2dd411ea5c1129f433c09cc556a606e Merge: 54182c03b 2a970a56d Author: Steve Yoo Date: Fri Jul 9 08:04:43 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 54182c03b2b76aeecf9c4c527701683689e4bd14 Merge: 7654df0d9 35d9bd0f6 Author: Steve Yoo Date: Thu Jul 8 08:15:46 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 7654df0d93ce2e920e0f63b95a0a9a6ba821fc26 Merge: 8ab309328 64cbdb9c2 Author: Steve Yoo Date: Mon Jul 5 13:00:33 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 8ab30932820484b5bdb4331771fa4a9e232ac901 Merge: b77d127d7 db0145be1 Author: Steve Yoo Date: Wed Jun 30 13:27:58 2021 +0900 Merge remote-tracking branch 'upstream/master' commit b77d127d789d6487180769eea8b3483f5b11f989 Merge: 4a5811623 632709012 Author: Steve Yoo Date: Mon Jun 28 10:01:50 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 4a5811623d589739ff67bbe0686f3bc148c0886b Merge: 6ce8d8ce6 7e6641192 Author: Steve Yoo Date: Mon Jun 21 09:31:00 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 6ce8d8ce66b71675558a35a87c430c4bbdf0c681 Merge: 84bc851ec db67c1b2b Author: Steve Yoo Date: Thu Jun 17 08:28:23 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 84bc851ecf43b793e83769dd0f728083ddec7f00 Merge: 5a2cb750e fb7435a64 Author: Steve Yoo Date: Tue Jun 15 08:24:23 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 5a2cb750ec04779aa862a1edf8d654444ff13831 Merge: 19ab2100a 05469e95e Author: Steve Yoo Date: Fri Jun 11 13:30:59 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 19ab2100a5c6f24dc8d16a232c4af05988e27494 Merge: b2bdc3976 4d9fe14ec Author: Steve Yoo Date: Tue Jun 8 09:49:38 2021 +0900 Merge remote-tracking branch 'upstream/master' commit b2bdc39760094af3d0084609984745435d1a399c Merge: 0a6c3cc9b ac1803c3a Author: Steve Yoo Date: Thu Jun 3 08:46:13 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 0a6c3cc9bf62649bfc24482bcab101180b9e7baf Merge: e07337d53 97a9a76ff Author: Steve Yoo Date: Wed May 26 10:51:49 2021 +0900 Merge remote-tracking branch 'upstream/master' commit e07337d533f61d7ca970e67a108ad158f0007b81 Merge: d4b251678 e41e25533 Author: Steve Yoo Date: Tue May 18 08:46:00 2021 +0900 Merge remote-tracking branch 'upstream/master' commit d4b251678ed272fe2bdef672d40b9197f7bbddbb Merge: f396091bd 1b8a0f7ae Author: Steve Yoo Date: Mon May 10 08:11:10 2021 +0900 Merge remote-tracking branch 'upstream/master' commit f396091bd8a3f4f507d3bf2e9feb3a7455ead615 Merge: f569dbc73 8645c0839 Author: Steve Yoo Date: Fri May 7 13:49:43 2021 +0900 Merge remote-tracking branch 'upstream/master' commit f569dbc73903d7f6c2843a1347c1d04c117665fa Merge: a6b2800be 31b161097 Author: Steve Yoo Date: Thu Apr 29 07:15:08 2021 +0900 Merge remote-tracking branch 'upstream/master' commit a6b2800be23f4858a1515ea611b9113b5b7141d1 Merge: dc771f1c4 1ae1757a5 Author: Steve Yoo Date: Wed Apr 28 07:50:13 2021 +0900 Merge remote-tracking branch 'upstream/master' commit dc771f1c4f75e32972c10b4eaec7e0e27e718739 Merge: 5320f7eae 5de5f4d7d Author: Steve Yoo Date: Tue Apr 27 15:00:05 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 5320f7eae0242e95e57df9169e90977a8fe0a976 Merge: 47dedfde5 39e1a21c4 Author: Steve Yoo Date: Mon Apr 26 08:32:06 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 47dedfde5780480ea036fe5eadae3233a68c3c96 Author: Steve Yoo Date: Mon Apr 19 09:06:56 2021 +0900 Add test cases for PReLU in cpu plugin * For case when slope is vector * fix build * remove exztra * Squashed commit of the following: commit 69d82175a815a8073b96cae0ee551852d32ae802 Merge: 4c5eb0f8f 068d31511 Author: Steve Yoo Date: Tue Sep 28 19:07:37 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 4c5eb0f8f476e1bf0cba71d871a93c9138a0d6cb Author: Steve Yoo Date: Tue Sep 28 19:06:16 2021 +0900 Build all (Multiple target shape inputs removed) commit dd3d17c85f09c7074cf0ab98654420d0aad1ba49 Merge: 0870cc6cc 1d3df63d6 Author: Steve Yoo Date: Mon Sep 27 20:29:47 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 0870cc6cc17b47dc259352bb76fd75edbb7edafa Author: Steve Yoo Date: Mon Sep 27 20:23:27 2021 +0900 While working on applying multiple target shapes to templateFuncTests, still failed commit e73a9741deff84a5849e87c54b14637cfbcc93c5 Merge: 20ea316b0 3bf34b116 Author: Steve Yoo Date: Mon Sep 27 16:54:16 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 20ea316b0d06d82aeafd9d85e129f5310b28fc86 Author: Steve Yoo Date: Mon Sep 27 16:52:39 2021 +0900 Apply Eltwise stype input shape to cpuFuncTests commit 080228297247e494b968177681f23599de3687d6 Author: Steve Yoo Date: Mon Sep 27 14:59:00 2021 +0900 Apply Eltwise input shape to templateFuncTests Modify GenerateInputs() to use functionRefs commit 25c399d922a50262590eed6da939a73b69f6041b Merge: ab476a9ba b3050c268 Author: Steve Yoo Date: Fri Sep 24 14:45:01 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit ab476a9ba36ffa5d5b9703eab4c9bce3c8b7649f Author: Steve Yoo Date: Fri Sep 24 14:44:23 2021 +0900 Add functionRefs for PrePostProcessTest commit 451ce9096deecb051404130a9e4cff3a9b6963b1 Merge: 5710141cd 846c9c91f Author: Steve Yoo Date: Fri Sep 24 12:20:34 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit 5710141cd8a89ada4f5cf289c53559479b7dde6e Author: Steve Yoo Date: Fri Sep 24 12:16:06 2021 +0900 templateFuncTests * Remove StaticShape and add DynamicShape to make existing test cases static default * Fix typos cpuFuncTests * Add functionRefs to each case commit c3b87f098d439e6e4fd5f96e64a2ab473ce218c0 Author: Steve Yoo Date: Thu Sep 23 12:51:40 2021 +0900 Fix to use ngraph::clone_function() commit fa7e87b1469be04cad6e41c08df95d9f87d21dee Merge: a8890950d d7dfce209 Author: Steve Yoo Date: Thu Sep 23 10:47:15 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit a8890950d315027a89b7a6c189b5851d1c334085 Merge: ceb802d97 5847b35ed Author: Steve Yoo Date: Thu Sep 16 19:24:08 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit ceb802d9781c3305eb9751bdbe5c90eb96b614df Author: Steve Yoo Date: Thu Sep 16 19:24:00 2021 +0900 templateFuncTest runs except multiple input shape cases commit 8adbaba71d877ed74be023fcb6c5f0c0f7ab3793 Merge: d11e3e917 f44369ce4 Author: Steve Yoo Date: Mon Sep 13 15:30:48 2021 +0900 Merge remote-tracking branch 'upstream/master' into sy/test/ConvolutionLayerTest_dynamic_shape_case commit d11e3e917e5fb83c23cb4e80a59c792059006fb3 Author: Steve Yoo Date: Mon Sep 13 15:30:27 2021 +0900 ConvolutionLayerTest for dynamic shape case (Test only) commit d8eaf21acd7c7682c39820b0263bf456c6299a80 Author: Steve Yoo Date: Mon Sep 13 14:41:38 2021 +0900 ConvolutionLayerTest for dynamic shape case commit fe57d0faa6562cfa902c4456814c2f0883b6bbce Merge: 39a691ab9 7a392253d Author: Steve Yoo Date: Mon Sep 13 09:59:44 2021 +0900 Merge branch 'master' into sy/ilyachur/draft_dynamic_plugin_rebased commit 7a392253d7e59f9b742ef6f136ee4689e2bce658 Merge: b8966457b 021639a04 Author: Steve Yoo Date: Mon Sep 13 09:59:01 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 39a691ab9533503871697eee36158d252b70420e Author: Steve Yoo Date: Mon Sep 13 09:55:38 2021 +0900 Remove redundant line commit 109cafeffea18d2d374ae72e0d630d51e601e9af Merge: 0245e05cc b8966457b Author: Steve Yoo Date: Thu Sep 9 10:25:36 2021 +0900 Merge branch 'master' into sy/ilyachur/draft_dynamic_plugin_rebased commit b8966457b9236a1397255209ee963362f4ce0456 Merge: 904384fee 1c1401b06 Author: Steve Yoo Date: Thu Sep 9 10:24:37 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 0245e05cc852cda081d273cb2ea71eacdb3438f4 Author: Steve Yoo Date: Thu Sep 9 10:18:54 2021 +0900 Remove comments used for indivisual testing Change unproper function names Remove unnecessary template<> commit 0854f07291abc4cf2e3d223103533e8e9fdc30ef Author: Steve Yoo Date: Fri Sep 3 13:31:22 2021 +0900 ConvolutionLayerTest and SoftMaxLayerTest on template_plugin for dynamic shapes rebased commit 904384fee3c86b6e3f276ce637023964c7ea1e40 Merge: 4bf45de5d b78f228fa Author: Steve Yoo Date: Fri Sep 3 09:11:44 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 4bf45de5dc2bd53de1c5385407c39f9ca8db884d Merge: 18476fe1b 07f7061f9 Author: Steve Yoo Date: Thu Sep 2 08:54:23 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 18476fe1b9dd1a39d35b1380f56ab19783fc9d8b Merge: e92f5928d f77d838e6 Author: Steve Yoo Date: Mon Aug 23 09:48:34 2021 +0900 Merge remote-tracking branch 'upstream/master' commit e92f5928dcd779f147effc6b95ba019bea583d6b Merge: ef937a5a5 2fefe1164 Author: Steve Yoo Date: Fri Aug 20 14:40:00 2021 +0900 Merge remote-tracking branch 'upstream/master' commit ef937a5a52b6d15af7fe1a3e5f2ca718d19b0a7e Merge: 04fed4c2a 184b3cbe4 Author: Steve Yoo Date: Fri Aug 20 13:32:53 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 04fed4c2afa45d530da5e251aa93709c215272a1 Merge: 508c61615 39131968c Author: Steve Yoo Date: Fri Aug 13 13:27:26 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 508c616151f3b715b838bccdac47bede71d07a9c Merge: 0647e6827 273c7188a Author: Steve Yoo Date: Fri Aug 13 10:49:35 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 0647e68277d9cd1f21d4aa6dab9bac5a53657735 Merge: 89ba7c1bf 04ff7a6ed Author: Steve Yoo Date: Wed Aug 11 13:39:51 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 89ba7c1bf166e9f860a0979943599a147b4ec9ba Merge: ebdbea67c b11a2220b Author: Steve Yoo Date: Mon Aug 9 09:01:44 2021 +0900 Merge remote-tracking branch 'upstream/master' commit ebdbea67cbdef3bfbacc5810df469d0a111f844d Merge: 4880bd11d d921e7a9c Author: Steve Yoo Date: Mon Jul 26 11:57:49 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 4880bd11d4fe3fbb3d5b1d440ffe204b62c4bb16 Merge: eef72406c 1e1e3bfff Author: Steve Yoo Date: Thu Jul 22 14:58:56 2021 +0900 Merge remote-tracking branch 'upstream/master' commit eef72406cc8cac5a6021184ed97cecd86bd8db58 Merge: 9ccacedef 2a15e3e79 Author: Steve Yoo Date: Fri Jul 16 12:58:14 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 9ccacedefef5e86289d4204952375cbf06ddb05c Merge: 14020554d c14edd413 Author: Steve Yoo Date: Thu Jul 15 13:48:24 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 14020554d2dd411ea5c1129f433c09cc556a606e Merge: 54182c03b 2a970a56d Author: Steve Yoo Date: Fri Jul 9 08:04:43 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 54182c03b2b76aeecf9c4c527701683689e4bd14 Merge: 7654df0d9 35d9bd0f6 Author: Steve Yoo Date: Thu Jul 8 08:15:46 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 7654df0d93ce2e920e0f63b95a0a9a6ba821fc26 Merge: 8ab309328 64cbdb9c2 Author: Steve Yoo Date: Mon Jul 5 13:00:33 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 8ab30932820484b5bdb4331771fa4a9e232ac901 Merge: b77d127d7 db0145be1 Author: Steve Yoo Date: Wed Jun 30 13:27:58 2021 +0900 Merge remote-tracking branch 'upstream/master' commit b77d127d789d6487180769eea8b3483f5b11f989 Merge: 4a5811623 632709012 Author: Steve Yoo Date: Mon Jun 28 10:01:50 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 4a5811623d589739ff67bbe0686f3bc148c0886b Merge: 6ce8d8ce6 7e6641192 Author: Steve Yoo Date: Mon Jun 21 09:31:00 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 6ce8d8ce66b71675558a35a87c430c4bbdf0c681 Merge: 84bc851ec db67c1b2b Author: Steve Yoo Date: Thu Jun 17 08:28:23 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 84bc851ecf43b793e83769dd0f728083ddec7f00 Merge: 5a2cb750e fb7435a64 Author: Steve Yoo Date: Tue Jun 15 08:24:23 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 5a2cb750ec04779aa862a1edf8d654444ff13831 Merge: 19ab2100a 05469e95e Author: Steve Yoo Date: Fri Jun 11 13:30:59 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 19ab2100a5c6f24dc8d16a232c4af05988e27494 Merge: b2bdc3976 4d9fe14ec Author: Steve Yoo Date: Tue Jun 8 09:49:38 2021 +0900 Merge remote-tracking branch 'upstream/master' commit b2bdc39760094af3d0084609984745435d1a399c Merge: 0a6c3cc9b ac1803c3a Author: Steve Yoo Date: Thu Jun 3 08:46:13 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 0a6c3cc9bf62649bfc24482bcab101180b9e7baf Merge: e07337d53 97a9a76ff Author: Steve Yoo Date: Wed May 26 10:51:49 2021 +0900 Merge remote-tracking branch 'upstream/master' commit e07337d533f61d7ca970e67a108ad158f0007b81 Merge: d4b251678 e41e25533 Author: Steve Yoo Date: Tue May 18 08:46:00 2021 +0900 Merge remote-tracking branch 'upstream/master' commit d4b251678ed272fe2bdef672d40b9197f7bbddbb Merge: f396091bd 1b8a0f7ae Author: Steve Yoo Date: Mon May 10 08:11:10 2021 +0900 Merge remote-tracking branch 'upstream/master' commit f396091bd8a3f4f507d3bf2e9feb3a7455ead615 Merge: f569dbc73 8645c0839 Author: Steve Yoo Date: Fri May 7 13:49:43 2021 +0900 Merge remote-tracking branch 'upstream/master' commit f569dbc73903d7f6c2843a1347c1d04c117665fa Merge: a6b2800be 31b161097 Author: Steve Yoo Date: Thu Apr 29 07:15:08 2021 +0900 Merge remote-tracking branch 'upstream/master' commit a6b2800be23f4858a1515ea611b9113b5b7141d1 Merge: dc771f1c4 1ae1757a5 Author: Steve Yoo Date: Wed Apr 28 07:50:13 2021 +0900 Merge remote-tracking branch 'upstream/master' commit dc771f1c4f75e32972c10b4eaec7e0e27e718739 Merge: 5320f7eae 5de5f4d7d Author: Steve Yoo Date: Tue Apr 27 15:00:05 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 5320f7eae0242e95e57df9169e90977a8fe0a976 Merge: 47dedfde5 39e1a21c4 Author: Steve Yoo Date: Mon Apr 26 08:32:06 2021 +0900 Merge remote-tracking branch 'upstream/master' commit 47dedfde5780480ea036fe5eadae3233a68c3c96 Author: Steve Yoo Date: Mon Apr 19 09:06:56 2021 +0900 Add test cases for PReLU in cpu plugin * For case when slope is vector * temp * Cpu * All fix for softmax * ie + gna * Remove extra * fix crash * eltwise * Fix crash * fix failures * gpu myriad * fix * fix template * fix * tr * gpu skip * fix gpu * fix template --- .../single_layer_tests/convolution.cpp | 92 +-- .../single_layer_tests/softmax.cpp | 121 ++- .../single_layer/convolution.cpp | 2 +- .../single_layer/elementwise.cpp | 13 +- .../plugin/cpu/bfloat16/memory_conv.cpp | 1 + .../infer_request/infer_requset_dynamic.cpp | 1 - .../single_layer_tests/convolution.cpp | 226 +++--- .../single_layer_tests/eltwise.cpp | 72 +- .../single_layer_tests/softmax.cpp | 83 +- .../subgraph_tests/concat_resize_concat.cpp | 1 + .../cpu/single_layer_tests/activation.cpp | 1 + .../single_layer_tests/adaptive_pooling.cpp | 1 + .../cpu/single_layer_tests/batch_to_space.cpp | 1 + .../plugin/cpu/single_layer_tests/concat.cpp | 1 + .../convert_to_plugin_specific_node.cpp | 1 + .../cpu/single_layer_tests/convolution.cpp | 768 +++++++++--------- .../convolution_backprop_data.cpp | 1 + .../cpu/single_layer_tests/depth_to_space.cpp | 1 + .../plugin/cpu/single_layer_tests/eltwise.cpp | 78 +- .../extract_image_patches.cpp | 1 + .../cpu/single_layer_tests/fake_quantize.cpp | 1 + .../single_layer_tests/gather_elements.cpp | 1 + .../single_layer_tests/group_convolution.cpp | 1 + .../group_convolution_backprop_data.cpp | 1 + .../cpu/single_layer_tests/gru_cell.cpp | 1 + .../cpu/single_layer_tests/gru_sequence.cpp | 2 + .../cpu/single_layer_tests/interpolate.cpp | 1 + .../plugin/cpu/single_layer_tests/logical.cpp | 1 + .../cpu/single_layer_tests/lstm_cell.cpp | 1 + .../cpu/single_layer_tests/lstm_sequence.cpp | 2 + .../plugin/cpu/single_layer_tests/mat_mul.cpp | 1 + .../plugin/cpu/single_layer_tests/mvn.cpp | 1 + .../cpu/single_layer_tests/normalize.cpp | 1 + .../plugin/cpu/single_layer_tests/one_hot.cpp | 1 + .../plugin/cpu/single_layer_tests/pad.cpp | 1 + .../plugin/cpu/single_layer_tests/pooling.cpp | 1 + .../cpu/single_layer_tests/psroi_pooling.cpp | 1 + .../cpu/single_layer_tests/reduce_ops.cpp | 1 + .../cpu/single_layer_tests/region_yolo.cpp | 1 + .../cpu/single_layer_tests/rnn_cell.cpp | 1 + .../cpu/single_layer_tests/rnn_sequence.cpp | 1 + .../cpu/single_layer_tests/roi_pooling.cpp | 1 + .../cpu/single_layer_tests/roialign.cpp | 1 + .../single_layer_tests/shuffle_channels.cpp | 2 + .../plugin/cpu/single_layer_tests/softmax.cpp | 1 + .../cpu/single_layer_tests/space_to_batch.cpp | 1 + .../cpu/single_layer_tests/space_to_depth.cpp | 1 + .../plugin/cpu/single_layer_tests/split.cpp | 1 + .../cpu/single_layer_tests/strided_slice.cpp | 1 + .../cpu/single_layer_tests/transpose.cpp | 1 + .../src/add_convert_to_reorder.cpp | 1 + .../src/concat_const_inplace.cpp | 1 + .../cpu/subgraph_tests/src/conv3d_reshape.cpp | 1 + .../cpu/subgraph_tests/src/conv_concat.cpp | 1 + .../subgraph_tests/src/conv_maxpool_activ.cpp | 1 + .../cpu/subgraph_tests/src/eltwise_chain.cpp | 1 + .../src/fuse_muladd_ewsimple.cpp | 1 + .../src/fuse_scaleshift_and_fakequantize.cpp | 1 + .../src/fuse_transpose_reorder.cpp | 1 + .../src/input_noreorder_eltwise_bf16.cpp | 1 + .../src/not_fused_conv_simple_op.cpp | 1 + .../cpu/subgraph_tests/src/reshape_fc.cpp | 1 + .../src/tile_with_two_output_edges.cpp | 1 + .../import_export_act_conv_act.cpp | 1 + .../import_export_memory_layer.cpp | 1 + .../plugin/gna/pass_tests/4d_eltwise.cpp | 2 + .../gna/pass_tests/act_maxpool_reordering.cpp | 1 + .../pass_tests/broadcast_const_with_fq.cpp | 1 + .../convert_dwsc_to_scaleshifts.cpp | 1 + .../convert_padded_to_valid_conv.cpp | 1 + .../gna/pass_tests/decompose_2d_conv.cpp | 1 + .../eltwise_split_over_channels_pass.cpp | 1 + .../plugin/gna/pass_tests/fq_activation.cpp | 1 + .../fq_fusion_with_multiple_weights.cpp | 1 + .../gna/pass_tests/fq_fusion_with_sigmoid.cpp | 1 + .../gna/pass_tests/fq_maxpool_reordering.cpp | 1 + .../gna/pass_tests/fq_outputs_activation_.cpp | 1 + .../fq_with_multiple_out_connections.cpp | 1 + .../insert_copy_layer_before_self_concat.cpp | 1 + .../insert_transpose_before_matmul.cpp | 1 + .../insert_transpose_between_convs.cpp | 2 + .../gna/pass_tests/layers_restrictions.cpp | 1 + .../remove_permutations_NHWC_to_NCHW_pass.cpp | 5 + .../single_layer_tests/convolution.cpp | 150 ++-- .../convolution_negative.cpp | 114 +-- .../single_layer_tests/eltwise.cpp | 16 +- .../infer_request/set_blob_by_type.cpp | 9 +- .../single_layer_tests/convolution.cpp | 70 +- .../single_layer_tests/eltwise.cpp | 28 +- .../single_layer_tests/softmax.cpp | 16 +- .../skip_tests_config.cpp | 8 +- .../single_layer_tests/tensor_iterator.cpp | 1 + .../single_layer_tests/convolution.cpp | 66 +- .../single_layer_tests/eltwise.cpp | 17 +- .../skip_tests_config.cpp | 2 +- .../behavior/preprocessing/preprocessing.hpp | 3 +- .../include/single_layer_tests/loop.hpp | 2 + .../src/behavior/caching/caching_tests.cpp | 1 + .../behavior/detect_network_batch_test.cpp | 3 + .../behavior/infer_request/dynamic_batch.cpp | 2 + .../src/behavior/invalid_cases/proposal.cpp | 1 + .../plugin/shared/src/behavior/set_blob.cpp | 1 + .../shared/src/behavior/stress_tests.cpp | 1 + .../shared/src/hetero/query_network.cpp | 1 + .../plugin/shared/src/hetero/synthetic.cpp | 1 + .../add_transformation.cpp | 1 + .../clamp_transformation.cpp | 1 + .../concat_transformation.cpp | 1 + .../concat_with_child_and_output.cpp | 1 + ...t_with_different_precision_on_children.cpp | 1 + ...oncat_with_intermediate_transformation.cpp | 1 + ...at_with_neighbors_graph_transformation.cpp | 1 + .../concat_with_split_transformation.cpp | 1 + ...nvolution_backprop_data_transformation.cpp | 1 + .../convolution_qdq_transformation.cpp | 1 + .../convolution_transformation.cpp | 1 + .../convolution_with_incorrect_weights.cpp | 1 + .../depth_to_space_transformation.cpp | 1 + ...e_quantize_and_avg_pool_transformation.cpp | 1 + ...e_quantize_and_max_pool_transformation.cpp | 1 + ...d_two_output_branches_with_convolution.cpp | 1 + ...ize_precision_selection_transformation.cpp | 1 + .../fake_quantize_transformation.cpp | 1 + ...ize_with_dq_not_optimal_transformation.cpp | 1 + .../fully_connected_transformation.cpp | 1 + .../fuse_convert_transformation.cpp | 1 + ...uantize_and_scale_shift_transformation.cpp | 1 + .../fuse_fake_quantize_transformation.cpp | 1 + ...ltiply_to_fake_quantize_transformation.cpp | 1 + ...btract_to_fake_quantize_transformation.cpp | 1 + .../gemm_transformation.cpp | 1 + .../group_convolution_transformation.cpp | 1 + .../groupconvolution_qdq_transformation.cpp | 1 + .../interpolate_transformation.cpp | 1 + .../mat_mul_transformation.cpp | 1 + .../mat_mul_with_constant_transformation.cpp | 1 + ..._constant_fake_quantize_transformation.cpp | 1 + .../move_fake_quantize_transformation.cpp | 1 + ...ly_to_group_convolution_transformation.cpp | 1 + .../multiply_transformation.cpp | 1 + ...ultiply_with_one_parent_transformation.cpp | 1 + .../mvn_transformation.cpp | 1 + .../normalize_transformation.cpp | 1 + ...put_layers_handling_in_transformations.cpp | 1 + .../pad_transformation.cpp | 1 + .../prelu_transformation.cpp | 1 + ..._through_dequantization_transformation.cpp | 1 + .../reduce_max_transformation.cpp | 1 + .../reduce_mean_transformation.cpp | 1 + .../reduce_min_transformation.cpp | 1 + .../reduce_sum_transformation.cpp | 1 + .../relu_transformation.cpp | 1 + .../reshape_transformation.cpp | 1 + .../shuffle_channels_transformation.cpp | 1 + .../split_transformation.cpp | 1 + .../squeeze_transformation.cpp | 1 + .../strided_slice_transformation.cpp | 1 + ...ultiply_to_multiply_add_transformation.cpp | 1 + .../subtract_transformation.cpp | 1 + .../transpose_after_matmul_transformation.cpp | 1 + .../transpose_transformation.cpp | 1 + .../unsqueeze_transformation.cpp | 1 + .../variadic_split_transformation.cpp | 1 + .../shared/src/subgraph_tests/codegen_add.cpp | 1 + .../src/subgraph_tests/codegen_bert.cpp | 1 + .../src/subgraph_tests/codegen_gelu.cpp | 2 + .../base/layer_test_utils.hpp | 8 +- .../single_layer/convolution.hpp | 2 +- .../single_layer/eltwise.hpp | 2 +- .../single_layer/softmax.hpp | 19 +- .../src/base/layer_test_utils.cpp | 119 ++- .../src/read_ir/read_ir.cpp | 1 + .../src/single_layer/activation.cpp | 2 + .../src/single_layer/adaptive_pooling.cpp | 1 + .../src/single_layer/batch_norm.cpp | 1 + .../src/single_layer/batch_to_space.cpp | 1 + .../src/single_layer/binary_convolution.cpp | 1 + .../src/single_layer/broadcast.cpp | 1 + .../src/single_layer/bucketize.cpp | 1 + .../src/single_layer/clamp.cpp | 1 + .../src/single_layer/comparison.cpp | 1 + .../src/single_layer/concat.cpp | 1 + .../src/single_layer/constant.cpp | 1 + .../src/single_layer/conversion.cpp | 1 + .../src/single_layer/convolution.cpp | 6 +- .../convolution_backprop_data.cpp | 1 + .../src/single_layer/ctc_greedy_decoder.cpp | 1 + .../ctc_greedy_decoder_seq_len.cpp | 1 + .../src/single_layer/ctc_loss.cpp | 1 + .../src/single_layer/cum_sum.cpp | 1 + .../single_layer/deformable_convolution.cpp | 1 + .../single_layer/deformable_psroi_pooling.cpp | 1 + .../src/single_layer/depth_to_space.cpp | 1 + .../src/single_layer/detection_output.cpp | 1 + .../src/single_layer/dft.cpp | 1 + .../src/single_layer/eltwise.cpp | 43 +- .../embedding_bag_offsets_sum.cpp | 1 + .../single_layer/embedding_bag_packed_sum.cpp | 1 + .../single_layer/embedding_segments_sum.cpp | 1 + .../single_layer/extract_image_patches.cpp | 1 + .../src/single_layer/fake_quantize.cpp | 1 + .../src/single_layer/gather.cpp | 3 + .../src/single_layer/gather_elements.cpp | 1 + .../src/single_layer/gather_nd.cpp | 1 + .../src/single_layer/gather_tree.cpp | 1 + .../src/single_layer/grn.cpp | 1 + .../src/single_layer/group_convolution.cpp | 1 + .../group_convolution_backprop_data.cpp | 2 + .../src/single_layer/gru_cell.cpp | 1 + .../src/single_layer/gru_sequence.cpp | 1 + .../src/single_layer/interpolate.cpp | 2 + .../src/single_layer/log_softmax.cpp | 1 + .../src/single_layer/logical.cpp | 1 + .../src/single_layer/loop.cpp | 4 + .../src/single_layer/low_precision.cpp | 1 + .../src/single_layer/lrn.cpp | 1 + .../src/single_layer/lstm_cell.cpp | 1 + .../src/single_layer/lstm_sequence.cpp | 3 +- .../src/single_layer/mat_mul.cpp | 1 + .../src/single_layer/matrix_nms.cpp | 1 + .../src/single_layer/memory.cpp | 1 + .../src/single_layer/minimum_maximum.cpp | 1 + .../src/single_layer/multiclass_nms.cpp | 1 + .../src/single_layer/mvn.cpp | 2 + .../src/single_layer/non_max_suppression.cpp | 1 + .../src/single_layer/nonzero.cpp | 1 + .../src/single_layer/normalize_l2.cpp | 1 + .../src/single_layer/one_hot.cpp | 1 + .../src/single_layer/pad.cpp | 1 + .../src/single_layer/pooling.cpp | 2 + .../src/single_layer/power.cpp | 1 + .../src/single_layer/prior_box.cpp | 1 + .../src/single_layer/prior_box_clustered.cpp | 1 + .../src/single_layer/proposal.cpp | 1 + .../src/single_layer/psroi_pooling.cpp | 1 + .../src/single_layer/range.cpp | 2 + .../src/single_layer/reduce_ops.cpp | 1 + .../src/single_layer/region_yolo.cpp | 1 + .../src/single_layer/reorg_yolo.cpp | 1 + .../src/single_layer/reshape.cpp | 2 + .../src/single_layer/result.cpp | 1 + .../src/single_layer/reverse_sequence.cpp | 1 + .../src/single_layer/rnn_cell.cpp | 1 + .../src/single_layer/rnn_sequence.cpp | 1 + .../src/single_layer/roi_align.cpp | 1 + .../src/single_layer/roi_pooling.cpp | 1 + .../src/single_layer/roll.cpp | 1 + .../src/single_layer/scatter_ND_update.cpp | 1 + .../single_layer/scatter_elements_update.cpp | 1 + .../src/single_layer/scatter_update.cpp | 1 + .../src/single_layer/select.cpp | 1 + .../src/single_layer/shape_of.cpp | 1 + .../src/single_layer/shuffle_channels.cpp | 1 + .../src/single_layer/softmax.cpp | 31 +- .../src/single_layer/space_to_batch.cpp | 1 + .../src/single_layer/space_to_depth.cpp | 1 + .../src/single_layer/split.cpp | 1 + .../src/single_layer/squeeze_unsqueeze.cpp | 1 + .../src/single_layer/strided_slice.cpp | 1 + .../src/single_layer/tensor_iterator.cpp | 1 + .../src/single_layer/tile.cpp | 1 + .../src/single_layer/topk.cpp | 1 + .../src/single_layer/transpose.cpp | 1 + .../src/single_layer/variadic_split.cpp | 1 + .../subgraph/activation_concats_eltwise.cpp | 1 + .../src/subgraph/activation_fq.cpp | 1 + .../src/subgraph/basic_lstm.cpp | 1 + .../src/subgraph/broadcast_power.cpp | 1 + .../src/subgraph/cascade_concat.cpp | 1 + .../src/subgraph/clamp_fq.cpp | 1 + .../src/subgraph/concat_conv.cpp | 1 + .../subgraph/connect_split_concat_concat.cpp | 1 + .../src/subgraph/constant_result.cpp | 1 + .../src/subgraph/conv_eltwise_fusion.cpp | 1 + .../src/subgraph/conv_strides_opt.cpp | 1 + .../subgraph/convert_pad_to_group_conv.cpp | 1 + .../subgraph/convolution_relu_sequence.cpp | 1 + .../src/subgraph/copy_before_squeeze.cpp | 1 + .../src/subgraph/crop4d.cpp | 1 + .../src/subgraph/delayed_copy_layer.cpp | 1 + .../src/subgraph/eltwise_conv_eltwise.cpp | 2 + .../subgraph/eltwise_reshape_activation.cpp | 1 + .../src/subgraph/fc_conv_fc.cpp | 1 + .../subgraph/first_connect_input_concat.cpp | 1 + .../src/subgraph/fq_conv_fq_affine.cpp | 1 + .../subgraph/get_output_before_activation.cpp | 1 + .../subgraph/handling_orientation_conv.cpp | 1 + .../src/subgraph/input_conv.cpp | 1 + .../src/subgraph/input_split_concat.cpp | 1 + .../src/subgraph/matmul_squeeze_add.cpp | 1 + .../src/subgraph/memory_LSTMCell.cpp | 3 + .../memory_eltwise_reshape_concat.cpp | 2 + .../src/subgraph/memory_fq_concat_prelu.cpp | 1 + .../src/subgraph/mul_conv_fusion.cpp | 1 + .../multioutput_eltwise_squeeze_eltwise.cpp | 1 + .../src/subgraph/multiple_LSTMCell.cpp | 3 + .../src/subgraph/multiple_concat.cpp | 1 + .../multiple_connect_split_concat.cpp | 1 + .../src/subgraph/multiple_input_fq.cpp | 1 + .../src/subgraph/multiply_add.cpp | 1 + .../src/subgraph/mvn_multiply_add.cpp | 1 + .../subgraph/negative_memory_layer_offset.cpp | 3 + .../src/subgraph/parameter_result.cpp | 1 + .../src/subgraph/parameter_shapeof_result.cpp | 1 + .../src/subgraph/perm_conv_perm_concat.cpp | 1 + .../src/subgraph/preprocess.cpp | 1 + .../quantized_convolution_backprop_data.cpp | 1 + .../subgraph/quantized_group_convolution.cpp | 1 + ...ntized_group_convolution_backprop_data.cpp | 1 + .../src/subgraph/quantized_mat_mul.cpp | 1 + .../src/subgraph/range_add.cpp | 2 + .../src/subgraph/reduce_eltwise.cpp | 1 + .../src/subgraph/relu_shape_of.cpp | 1 + .../src/subgraph/relu_split_reshape.cpp | 1 + ...shape_permute_conv_permute_reshape_act.cpp | 1 + .../src/subgraph/reshape_permute_reshape.cpp | 1 + .../subgraph/reshape_squeeze_reshape_relu.cpp | 1 + .../src/subgraph/scale_shift.cpp | 1 + .../subgraph/scaleshift_conv_scaleshift.cpp | 2 + .../src/subgraph/softsign.cpp | 1 + .../src/subgraph/split_concat_memory.cpp | 1 + .../src/subgraph/split_conv.cpp | 1 + .../src/subgraph/split_conv_concat.cpp | 1 + .../src/subgraph/split_relu.cpp | 1 + .../subgraph/split_trivial_permute_concat.cpp | 1 + .../src/subgraph/stridedslice_conv.cpp | 1 + .../src/subgraph/tensor_names.cpp | 1 + .../src/subgraph/transpose_add.cpp | 1 + .../transpose_conv_transpose_squeeze.cpp | 1 + .../src/subgraph/trivial_concat.cpp | 1 + .../two_fake_quantize_to_fullyconnected.cpp | 1 + .../src/subgraph/variadic_split_pad.cpp | 1 + .../common_test_utils/common_utils.hpp | 39 + 333 files changed, 1583 insertions(+), 981 deletions(-) diff --git a/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/convolution.cpp b/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/convolution.cpp index c099cb3d5d4..e8ce3380ba0 100644 --- a/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/convolution.cpp +++ b/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/convolution.cpp @@ -13,8 +13,8 @@ namespace { // ! [test_convolution:declare_parameters] const std::vector netPrecisions = { - InferenceEngine::Precision::FP32, - InferenceEngine::Precision::FP16, + InferenceEngine::Precision::FP32, + InferenceEngine::Precision::FP16, }; /* ============= 2D Convolution ============= */ @@ -58,41 +58,41 @@ const auto conv2DParams_AutoPadValid = ::testing::Combine( // ! [test_convolution:instantiate] INSTANTIATE_TEST_SUITE_P(Convolution2D_ExplicitPadding, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_ExplicitPadding, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_ExplicitPadding, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), + ConvolutionLayerTest::getTestCaseName); // ! [test_convolution:instantiate] INSTANTIATE_TEST_SUITE_P(Convolution2D_AutoPadValid, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_AutoPadValid, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_AutoPadValid, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), + ConvolutionLayerTest::getTestCaseName); /* ============= 3D Convolution ============= */ const std::vector> kernels3d = {{3, 3, 3}, - {3, 5, 3}}; + {3, 5, 3}}; const std::vector> paddings3d = {{0, 0, 0}, {0, 2, 0}}; const std::vector> strides3d = {{1, 1, 1}, - {1, 2, 1}}; + {1, 2, 1}}; const std::vector> dilations3d = {{1, 1, 1}, - {1, 2, 1}}; + {1, 2, 1}}; const auto conv3DParams_ExplicitPadding = ::testing::Combine( ::testing::ValuesIn(kernels3d), @@ -114,27 +114,27 @@ const auto conv3DParams_AutoPadValid = ::testing::Combine( ); INSTANTIATE_TEST_SUITE_P(smoke_Convolution3D_ExplicitPadding, ConvolutionLayerTest, - ::testing::Combine( - conv3DParams_ExplicitPadding, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 10, 10, 10})), - ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv3DParams_ExplicitPadding, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 10, 10, 10})), + ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(nightly_Convolution3D_AutoPadValid, ConvolutionLayerTest, - ::testing::Combine( - conv3DParams_AutoPadValid, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 10, 10, 10})), - ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv3DParams_AutoPadValid, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 10, 10, 10})), + ::testing::Values(CommonTestUtils::DEVICE_TEMPLATE)), + ConvolutionLayerTest::getTestCaseName); -} // namespace +} // namespace \ No newline at end of file diff --git a/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/softmax.cpp b/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/softmax.cpp index 583d2d7b81e..f77f473d011 100644 --- a/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/softmax.cpp +++ b/docs/template_plugin/tests/functional/shared_tests_instances/single_layer_tests/softmax.cpp @@ -12,66 +12,117 @@ using namespace LayerTestsDefinitions; namespace { const std::vector netPrecisions = { - InferenceEngine::Precision::FP32, + InferenceEngine::Precision::FP32, }; const std::vector inputLayouts2D = { - InferenceEngine::Layout::NC, + InferenceEngine::Layout::NC, }; -const std::vector inputShapes2D = { - InferenceEngine::SizeVector {1, 100}, - InferenceEngine::SizeVector {100, 1}, - InferenceEngine::SizeVector {10, 10}, +const std::vector>> inputStaticShape2D = { + {{}, {{1, 100}}}, + {{}, {{100, 1}}}, + {{}, {{10, 10}}}, +}; + +const std::vector>> inputDynamicShape2D = { + {{ngraph::Dimension::dynamic(), 10}, {{1, 10}, {2, 10}, {10, 10}}}, + {{ngraph::Dimension(1, 10), 10}, {{1, 10}, {2, 10}, {10, 10}}}, + {{10, ngraph::Dimension::dynamic()}, {{10, 1}, {10, 5}, {10, 10}}}, + {{ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic()}, {{1, 10}, {2, 10}, {10, 10}}} }; const std::vector axis2D = { - 0, 1 + 0, 1 }; -const auto params2D = testing::Combine( - testing::ValuesIn(netPrecisions), - testing::Values(InferenceEngine::Precision::UNSPECIFIED), - testing::Values(InferenceEngine::Precision::UNSPECIFIED), - testing::ValuesIn(inputLayouts2D), - testing::Values(InferenceEngine::Layout::ANY), - testing::ValuesIn(inputShapes2D), - testing::ValuesIn(axis2D), - testing::Values(CommonTestUtils::DEVICE_TEMPLATE), - testing::Values(std::map()) +const auto params2D_static = testing::Combine( + testing::ValuesIn(netPrecisions), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::ValuesIn(inputLayouts2D), + testing::Values(InferenceEngine::Layout::ANY), + testing::ValuesIn(inputStaticShape2D), + testing::ValuesIn(axis2D), + testing::Values(CommonTestUtils::DEVICE_TEMPLATE), + testing::Values(std::map()) +); + +const auto params2D_dynamic = testing::Combine( + testing::ValuesIn(netPrecisions), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::ValuesIn(inputLayouts2D), + testing::Values(InferenceEngine::Layout::ANY), + testing::ValuesIn(inputDynamicShape2D), + testing::ValuesIn(axis2D), + testing::Values(CommonTestUtils::DEVICE_TEMPLATE), + testing::Values(std::map()) ); INSTANTIATE_TEST_SUITE_P( - smoke_SoftMax2D, + smoke_SoftMax2D_static, SoftMaxLayerTest, - params2D, + params2D_static, SoftMaxLayerTest::getTestCaseName ); -const std::vector inputShapes4D = { - InferenceEngine::SizeVector {1, 100, 1, 1}, - InferenceEngine::SizeVector {1, 3, 4, 3}, - InferenceEngine::SizeVector {2, 3, 4, 5}, +INSTANTIATE_TEST_SUITE_P( + smoke_SoftMax2D_dynamic, + SoftMaxLayerTest, + params2D_dynamic, + SoftMaxLayerTest::getTestCaseName +); + +const std::vector>> inputStaticShape4D = { + {{}, {{1, 100, 1, 1}}}, + {{}, {{50, 100, 4, 1}}}, + {{}, {{2, 100, 10, 1}}}, +}; + +const std::vector>> inputDynamicShape4D = { + {{ngraph::Dimension::dynamic(), 100, ngraph::Dimension(1, 10), 1}, {{1, 100, 1, 1}, {100, 100, 5, 1}}}, + {{ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic()}, + {{1, 100, 1, 1}, {50, 100, 4, 1}, {2, 100, 10, 1}}}, }; const std::vector axis4D = {0, 1, 2, 3}; -const auto params4D = testing::Combine( - testing::ValuesIn(netPrecisions), - testing::Values(InferenceEngine::Precision::UNSPECIFIED), - testing::Values(InferenceEngine::Precision::UNSPECIFIED), - testing::Values(InferenceEngine::Layout::NCHW), - testing::Values(InferenceEngine::Layout::ANY), - testing::ValuesIn(inputShapes4D), - testing::ValuesIn(axis4D), - testing::Values(CommonTestUtils::DEVICE_TEMPLATE), - testing::Values(std::map()) +const auto params4Dstatic = testing::Combine( + testing::ValuesIn(netPrecisions), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Layout::NCHW), + testing::Values(InferenceEngine::Layout::ANY), + testing::ValuesIn(inputStaticShape4D), + testing::ValuesIn(axis4D), + testing::Values(CommonTestUtils::DEVICE_TEMPLATE), + testing::Values(std::map()) +); + +const auto params4Ddynamic = testing::Combine( + testing::ValuesIn(netPrecisions), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Layout::NCHW), + testing::Values(InferenceEngine::Layout::ANY), + testing::ValuesIn(inputDynamicShape4D), + testing::ValuesIn(axis4D), + testing::Values(CommonTestUtils::DEVICE_TEMPLATE), + testing::Values(std::map()) ); INSTANTIATE_TEST_SUITE_P( - smoke_SoftMax4D, + smoke_SoftMax4D_static, SoftMaxLayerTest, - params4D, + params2D_static, + SoftMaxLayerTest::getTestCaseName +); + +INSTANTIATE_TEST_SUITE_P( + smoke_SoftMax4D_dynamic, + SoftMaxLayerTest, + params2D_dynamic, SoftMaxLayerTest::getTestCaseName ); diff --git a/inference-engine/tests/functional/inference_engine/serialization/single_layer/convolution.cpp b/inference-engine/tests/functional/inference_engine/serialization/single_layer/convolution.cpp index f68db9c3b08..2041c7e63ac 100644 --- a/inference-engine/tests/functional/inference_engine/serialization/single_layer/convolution.cpp +++ b/inference-engine/tests/functional/inference_engine/serialization/single_layer/convolution.cpp @@ -59,4 +59,4 @@ INSTANTIATE_TEST_SUITE_P( ::testing::Values(std::vector({1, 3, 30, 30})), ::testing::Values(CommonTestUtils::DEVICE_CPU)), ConvolutionLayerTest::getTestCaseName); -} // namespace +} // namespace \ No newline at end of file diff --git a/inference-engine/tests/functional/inference_engine/serialization/single_layer/elementwise.cpp b/inference-engine/tests/functional/inference_engine/serialization/single_layer/elementwise.cpp index 1a131fffaf5..faa37f44dca 100644 --- a/inference-engine/tests/functional/inference_engine/serialization/single_layer/elementwise.cpp +++ b/inference-engine/tests/functional/inference_engine/serialization/single_layer/elementwise.cpp @@ -9,17 +9,20 @@ using namespace LayerTestsDefinitions; namespace { -TEST_P(EltwiseLayerTest, Serialize) { Serialize(); } +TEST_P(EltwiseLayerTest, Serialize) { + Serialize(); +} + const std::vector inputPrecisions = { InferenceEngine::Precision::FP32, InferenceEngine::Precision::FP16, InferenceEngine::Precision::I32, }; -std::vector>> inputShapes = { - {{2}}, - {{1, 5, 50}}, - {{2, 10, 1, 4}, {2, 10, 1, 1}} +std::vector, std::vector>>> inputShapes = { + {{}, {{{2}}}}, + {{}, {{{1, 5, 50}}}}, + {{}, {{{2, 10, 1, 4}, {2, 10, 1, 1}}}} }; std::vector secondaryInputTypes = { diff --git a/inference-engine/tests/functional/plugin/cpu/bfloat16/memory_conv.cpp b/inference-engine/tests/functional/plugin/cpu/bfloat16/memory_conv.cpp index e4d7fa1ea38..989323bd680 100644 --- a/inference-engine/tests/functional/plugin/cpu/bfloat16/memory_conv.cpp +++ b/inference-engine/tests/functional/plugin/cpu/bfloat16/memory_conv.cpp @@ -70,6 +70,7 @@ protected: ngraph::NodeVector {bias_2}, ngraph::ParameterVector {input}, "SimpleNet"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/behavior/infer_request/infer_requset_dynamic.cpp b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/behavior/infer_request/infer_requset_dynamic.cpp index c8229be8dba..6bf85914f76 100644 --- a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/behavior/infer_request/infer_requset_dynamic.cpp +++ b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/behavior/infer_request/infer_requset_dynamic.cpp @@ -76,5 +76,4 @@ INSTANTIATE_TEST_SUITE_P(smoke_BehaviorTests_2, InferRequestDynamicTests, ::testing::Values(CommonTestUtils::DEVICE_CPU), ::testing::ValuesIn(configs)), InferRequestDynamicTests::getTestCaseName); - } // namespace diff --git a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/convolution.cpp b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/convolution.cpp index fbaba32e8d8..d0d7f83e7fa 100644 --- a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/convolution.cpp +++ b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/convolution.cpp @@ -12,8 +12,8 @@ using namespace LayerTestsDefinitions; namespace { const std::vector netPrecisions = { - InferenceEngine::Precision::FP32, InferenceEngine::Precision::FP16, - InferenceEngine::Precision::I32}; + InferenceEngine::Precision::FP32, InferenceEngine::Precision::FP16, + InferenceEngine::Precision::I32}; /* ============= 1D Convolution ============= */ const std::vector> kernels1D = {{3}, {5}}; @@ -24,40 +24,40 @@ const std::vector> dilations1D = {{1}, {3}}; const std::vector numOutChannels1D = {1, 5}; const auto conv1DParams_ExplicitPadding = ::testing::Combine( - ::testing::ValuesIn(kernels1D), ::testing::ValuesIn(strides1D), - ::testing::ValuesIn(padBegins1D), ::testing::ValuesIn(padEnds1D), - ::testing::ValuesIn(dilations1D), ::testing::ValuesIn(numOutChannels1D), - ::testing::Values(ngraph::op::PadType::EXPLICIT)); + ::testing::ValuesIn(kernels1D), ::testing::ValuesIn(strides1D), + ::testing::ValuesIn(padBegins1D), ::testing::ValuesIn(padEnds1D), + ::testing::ValuesIn(dilations1D), ::testing::ValuesIn(numOutChannels1D), + ::testing::Values(ngraph::op::PadType::EXPLICIT)); const auto conv1DParams_AutoPadValid = ::testing::Combine( - ::testing::ValuesIn(kernels1D), ::testing::ValuesIn(strides1D), - ::testing::Values(std::vector({0})), - ::testing::Values(std::vector({0})), - ::testing::ValuesIn(dilations1D), ::testing::ValuesIn(numOutChannels1D), - ::testing::Values(ngraph::op::PadType::VALID)); + ::testing::ValuesIn(kernels1D), ::testing::ValuesIn(strides1D), + ::testing::Values(std::vector({0})), + ::testing::Values(std::vector({0})), + ::testing::ValuesIn(dilations1D), ::testing::ValuesIn(numOutChannels1D), + ::testing::Values(ngraph::op::PadType::VALID)); INSTANTIATE_TEST_SUITE_P( - smoke_Convolution1D_ExplicitPadding, ConvolutionLayerTest, - ::testing::Combine( - conv1DParams_ExplicitPadding, ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ConvolutionLayerTest::getTestCaseName); + smoke_Convolution1D_ExplicitPadding, ConvolutionLayerTest, + ::testing::Combine( + conv1DParams_ExplicitPadding, ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P( - smoke_Convolution1D_AutoPadValid, ConvolutionLayerTest, - ::testing::Combine( - conv1DParams_AutoPadValid, ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ConvolutionLayerTest::getTestCaseName); + smoke_Convolution1D_AutoPadValid, ConvolutionLayerTest, + ::testing::Combine( + conv1DParams_AutoPadValid, ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ConvolutionLayerTest::getTestCaseName); /* ============= 2D Convolution ============= */ const std::vector> kernels = {{3, 3}, {3, 5}}; @@ -68,68 +68,68 @@ const std::vector> dilations = {{1, 1}, {3, 1}}; const std::vector numOutChannels = {1, 5}; const auto conv2DParams_ExplicitPadding = ::testing::Combine( - ::testing::ValuesIn(kernels), ::testing::ValuesIn(strides), - ::testing::ValuesIn(padBegins), ::testing::ValuesIn(padEnds), - ::testing::ValuesIn(dilations), ::testing::ValuesIn(numOutChannels), - ::testing::Values(ngraph::op::PadType::EXPLICIT)); + ::testing::ValuesIn(kernels), ::testing::ValuesIn(strides), + ::testing::ValuesIn(padBegins), ::testing::ValuesIn(padEnds), + ::testing::ValuesIn(dilations), ::testing::ValuesIn(numOutChannels), + ::testing::Values(ngraph::op::PadType::EXPLICIT)); const auto conv2DParams_AutoPadValid = ::testing::Combine( - ::testing::ValuesIn(kernels), ::testing::ValuesIn(strides), - ::testing::Values(std::vector({0, 0})), - ::testing::Values(std::vector({0, 0})), - ::testing::ValuesIn(dilations), ::testing::ValuesIn(numOutChannels), - ::testing::Values(ngraph::op::PadType::VALID)); + ::testing::ValuesIn(kernels), ::testing::ValuesIn(strides), + ::testing::Values(std::vector({0, 0})), + ::testing::Values(std::vector({0, 0})), + ::testing::ValuesIn(dilations), ::testing::ValuesIn(numOutChannels), + ::testing::Values(ngraph::op::PadType::VALID)); INSTANTIATE_TEST_SUITE_P( - smoke_Convolution2D_ExplicitPadding, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_ExplicitPadding, ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ConvolutionLayerTest::getTestCaseName); + smoke_Convolution2D_ExplicitPadding, ConvolutionLayerTest, + ::testing::Combine( + conv2DParams_ExplicitPadding, ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P( - smoke_Convolution2D_AutoPadValid, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_AutoPadValid, ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ConvolutionLayerTest::getTestCaseName); + smoke_Convolution2D_AutoPadValid, ConvolutionLayerTest, + ::testing::Combine( + conv2DParams_AutoPadValid, ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ConvolutionLayerTest::getTestCaseName); // weight for this convolution have Acdb16a layout // for [96,1,7,7] shape strides for 1 and 3 dimensions equals, but not default order namespace specificWeightLayout { - const std::vector kernels = {7, 7}; - const std::vector strides = {2, 2}; - const std::vector padBegins = {1, 1}; - const std::vector padEnds = {1, 1}; - const std::vector dilations = {1, 1}; - const size_t numOutChannels = {96}; - const auto conv2DParams_WeightLayout = ::testing::Combine(::testing::Values(kernels), - ::testing::Values(strides), - ::testing::Values(padBegins), - ::testing::Values(padEnds), - ::testing::Values(dilations), - ::testing::Values(numOutChannels), - ::testing::Values(ngraph::op::PadType::EXPLICIT)); +const std::vector kernels = {7, 7}; +const std::vector strides = {2, 2}; +const std::vector padBegins = {1, 1}; +const std::vector padEnds = {1, 1}; +const std::vector dilations = {1, 1}; +const size_t numOutChannels = {96}; +const auto conv2DParams_WeightLayout = ::testing::Combine(::testing::Values(kernels), + ::testing::Values(strides), + ::testing::Values(padBegins), + ::testing::Values(padEnds), + ::testing::Values(dilations), + ::testing::Values(numOutChannels), + ::testing::Values(ngraph::op::PadType::EXPLICIT)); - INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_SpecificWeightLayout, ConvolutionLayerTest, - ::testing::Combine(conv2DParams_WeightLayout, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 1, 50, 75})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ConvolutionLayerTest::getTestCaseName); +INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_SpecificWeightLayout, ConvolutionLayerTest, + ::testing::Combine(conv2DParams_WeightLayout, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 1, 50, 75})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ConvolutionLayerTest::getTestCaseName); } // namespace specificWeightLayout /* ============= 3D Convolution ============= */ @@ -140,39 +140,39 @@ const std::vector> dilations3d = {{1, 1, 1}, {1, 2, 1}}; const std::vector numOutChannels3D = {1, 5}; const auto conv3DParams_ExplicitPadding = ::testing::Combine( - ::testing::ValuesIn(kernels3d), ::testing::ValuesIn(strides3d), - ::testing::ValuesIn(paddings3d), ::testing::ValuesIn(paddings3d), - ::testing::ValuesIn(dilations3d), ::testing::ValuesIn(numOutChannels3D), - ::testing::Values(ngraph::op::PadType::EXPLICIT)); + ::testing::ValuesIn(kernels3d), ::testing::ValuesIn(strides3d), + ::testing::ValuesIn(paddings3d), ::testing::ValuesIn(paddings3d), + ::testing::ValuesIn(dilations3d), ::testing::ValuesIn(numOutChannels3D), + ::testing::Values(ngraph::op::PadType::EXPLICIT)); const auto conv3DParams_AutoPadValid = ::testing::Combine( - ::testing::ValuesIn(kernels3d), ::testing::ValuesIn(strides3d), - ::testing::Values(std::vector({0, 0, 0})), - ::testing::Values(std::vector({0, 0, 0})), - ::testing::ValuesIn(dilations3d), ::testing::ValuesIn(numOutChannels3D), - ::testing::Values(ngraph::op::PadType::VALID)); + ::testing::ValuesIn(kernels3d), ::testing::ValuesIn(strides3d), + ::testing::Values(std::vector({0, 0, 0})), + ::testing::Values(std::vector({0, 0, 0})), + ::testing::ValuesIn(dilations3d), ::testing::ValuesIn(numOutChannels3D), + ::testing::Values(ngraph::op::PadType::VALID)); INSTANTIATE_TEST_SUITE_P( - smoke_Convolution3D_ExplicitPadding, ConvolutionLayerTest, - ::testing::Combine( - conv3DParams_ExplicitPadding, ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 10, 10, 10})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ConvolutionLayerTest::getTestCaseName); + smoke_Convolution3D_ExplicitPadding, ConvolutionLayerTest, + ::testing::Combine( + conv3DParams_ExplicitPadding, ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 10, 10, 10})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P( - smoke_Convolution3D_AutoPadValid, ConvolutionLayerTest, - ::testing::Combine( - conv3DParams_AutoPadValid, ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 10, 10, 10})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ConvolutionLayerTest::getTestCaseName); + smoke_Convolution3D_AutoPadValid, ConvolutionLayerTest, + ::testing::Combine( + conv3DParams_AutoPadValid, ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 10, 10, 10})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ConvolutionLayerTest::getTestCaseName); -} // namespace +} // namespace \ No newline at end of file diff --git a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/eltwise.cpp b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/eltwise.cpp index b0933abc379..b693179bbb4 100644 --- a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/eltwise.cpp +++ b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/eltwise.cpp @@ -9,20 +9,25 @@ using namespace LayerTestsDefinitions; namespace { -std::vector>> inShapes = { - {{2}}, - {{2, 200}}, - {{10, 200}}, - {{1, 10, 100}}, - {{4, 4, 16}}, - {{1, 1, 1, 3}}, - {{2, 17, 5, 4}, {1, 17, 1, 1}}, - {{2, 17, 5, 1}, {1, 17, 1, 4}}, - {{1, 2, 4}}, - {{1, 4, 4}}, - {{1, 4, 4, 1}}, - {{1, 1, 1, 1, 1, 1, 3}}, - {{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}} +std::vector, std::vector>>> inShapesStatic = { + {{}, {{{2}}}}, + {{}, {{{2, 200}}}}, + {{}, {{{10, 200}}}}, + {{}, {{{1, 10, 100}}}}, + {{}, {{{4, 4, 16}}}}, + {{}, {{{1, 1, 1, 3}}}}, + {{}, {{{2, 17, 5, 4}, {1, 17, 1, 1}}}}, + {{}, {{{2, 17, 5, 1}, {1, 17, 1, 4}}}}, + {{}, {{{1, 2, 4}}}}, + {{}, {{{1, 4, 4}}}}, + {{}, {{{1, 4, 4, 1}}}}, + {{}, {{{1, 1, 1, 1, 1, 1, 3}}}}, + {{}, {{{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}}} +}; + +std::vector, std::vector>>> inShapesDynamic = { + {{{ngraph::Dimension(1, 10), 200}, {ngraph::Dimension(1, 10), 200}}, + {{{2, 200}, {2, 200}}, {{1, 200}, {5, 200}}}}, }; std::vector netPrecisions = { @@ -36,11 +41,19 @@ std::vector secondaryInputTypes = { ngraph::helpers::InputLayerType::PARAMETER, }; +std::vector secondaryInputTypesDynamic = { + ngraph::helpers::InputLayerType::PARAMETER, +}; + std::vector opTypes = { CommonTestUtils::OpType::SCALAR, CommonTestUtils::OpType::VECTOR, }; +std::vector opTypesDynamic = { + CommonTestUtils::OpType::VECTOR, +}; + std::vector eltwiseOpTypes = { ngraph::helpers::EltwiseTypes::ADD, ngraph::helpers::EltwiseTypes::MULTIPLY, @@ -52,10 +65,16 @@ std::vector eltwiseOpTypes = { ngraph::helpers::EltwiseTypes::MOD }; +std::vector eltwiseOpTypesDynamic = { + ngraph::helpers::EltwiseTypes::ADD, + ngraph::helpers::EltwiseTypes::MULTIPLY, + ngraph::helpers::EltwiseTypes::SUBTRACT, +}; + std::map additional_config = {}; const auto multiply_params = ::testing::Combine( - ::testing::ValuesIn(inShapes), + ::testing::ValuesIn(inShapesStatic), ::testing::ValuesIn(eltwiseOpTypes), ::testing::ValuesIn(secondaryInputTypes), ::testing::ValuesIn(opTypes), @@ -66,13 +85,26 @@ const auto multiply_params = ::testing::Combine( ::testing::Values(CommonTestUtils::DEVICE_CPU), ::testing::Values(additional_config)); -INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs, EltwiseLayerTest, multiply_params, EltwiseLayerTest::getTestCaseName); +const auto multiply_params_dynamic = ::testing::Combine( + ::testing::ValuesIn(inShapesDynamic), + ::testing::ValuesIn(eltwiseOpTypesDynamic), + ::testing::ValuesIn(secondaryInputTypesDynamic), + ::testing::ValuesIn(opTypesDynamic), + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(CommonTestUtils::DEVICE_CPU), + ::testing::Values(additional_config)); + +INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_static, EltwiseLayerTest, multiply_params, EltwiseLayerTest::getTestCaseName); +INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_dynamic, EltwiseLayerTest, multiply_params_dynamic, EltwiseLayerTest::getTestCaseName); -std::vector>> inShapesSingleThread = { - {{1, 2, 3, 4}}, - {{2, 2, 2, 2}}, - {{2, 1, 2, 1, 2, 2}} +std::vector, std::vector>>> inShapesSingleThread = { + {{}, {{{1, 2, 3, 4}}}}, + {{}, {{{2, 2, 2, 2}}}}, + {{}, {{{2, 1, 2, 1, 2, 2}}}} }; std::vector eltwiseOpTypesSingleThread = { diff --git a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/softmax.cpp b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/softmax.cpp index 23d4c6555da..c1aaf58fcfc 100644 --- a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/softmax.cpp +++ b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/single_layer_tests/softmax.cpp @@ -19,59 +19,110 @@ const std::vector inputLayouts2D = { InferenceEngine::Layout::NC, }; -const std::vector inputShapes2D = { - InferenceEngine::SizeVector {1, 100}, - InferenceEngine::SizeVector {100, 1}, - InferenceEngine::SizeVector {10, 10}, +const std::vector>> inputStaticShape2D = { + {{}, {{1, 100}}}, + {{}, {{100, 1}}}, + {{}, {{10, 10}}}, +}; + +const std::vector>> inputDynamicShape2D = { + {{ngraph::Dimension::dynamic(), 10}, {{1, 10}, {2, 10}, {10, 10}}}, + {{ngraph::Dimension(1, 10), 10}, {{1, 10}, {2, 10}, {10, 10}}}, + {{10, ngraph::Dimension::dynamic()}, {{10, 1}, {10, 5}, {10, 10}}}, + {{ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic()}, {{1, 10}, {2, 10}, {10, 10}}} }; const std::vector axis2D = { 0, 1 }; -const auto params2D = testing::Combine( +const auto params2D_static = testing::Combine( testing::ValuesIn(netPrecisions), testing::Values(InferenceEngine::Precision::UNSPECIFIED), testing::Values(InferenceEngine::Precision::UNSPECIFIED), testing::ValuesIn(inputLayouts2D), testing::Values(InferenceEngine::Layout::ANY), - testing::ValuesIn(inputShapes2D), + testing::ValuesIn(inputStaticShape2D), testing::ValuesIn(axis2D), testing::Values(CommonTestUtils::DEVICE_CPU), testing::Values(std::map()) ); +const auto params2D_dynamic = testing::Combine( + testing::ValuesIn(netPrecisions), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::ValuesIn(inputLayouts2D), + testing::Values(InferenceEngine::Layout::ANY), + testing::ValuesIn(inputDynamicShape2D), + testing::ValuesIn(axis2D), + testing::Values(CommonTestUtils::DEVICE_CPU), + testing::Values(std::map()) +); + INSTANTIATE_TEST_SUITE_P( - smoke_SoftMax2D, + smoke_SoftMax2D_static, SoftMaxLayerTest, - params2D, + params2D_static, SoftMaxLayerTest::getTestCaseName ); -const std::vector inputShapes4D = { - InferenceEngine::SizeVector {1, 100, 1, 1}, - InferenceEngine::SizeVector {1, 3, 4, 3}, - InferenceEngine::SizeVector {2, 3, 4, 5}, +INSTANTIATE_TEST_SUITE_P( + smoke_SoftMax2D_dynamic, + SoftMaxLayerTest, + params2D_dynamic, + SoftMaxLayerTest::getTestCaseName +); + +const std::vector>> inputStaticShape4D = { + {{}, {{1, 100, 1, 1}}}, + {{}, {{50, 100, 4, 1}}}, + {{}, {{2, 100, 10, 1}}}, +}; + +const std::vector>> inputDynamicShape4D = { + {{ngraph::Dimension::dynamic(), 100, ngraph::Dimension(1, 10), 1}, {{1, 100, 1, 1}, {100, 100, 5, 1}}}, + {{ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic(), ngraph::Dimension::dynamic()}, + {{1, 100, 1, 1}, {50, 100, 4, 1}, {2, 100, 10, 1}}}, }; const std::vector axis4D = {0, 1, 2, 3}; -const auto params4D = testing::Combine( +const auto params4Dstatic = testing::Combine( testing::ValuesIn(netPrecisions), testing::Values(InferenceEngine::Precision::UNSPECIFIED), testing::Values(InferenceEngine::Precision::UNSPECIFIED), testing::Values(InferenceEngine::Layout::NCHW), testing::Values(InferenceEngine::Layout::ANY), - testing::ValuesIn(inputShapes4D), + testing::ValuesIn(inputStaticShape4D), testing::ValuesIn(axis4D), testing::Values(CommonTestUtils::DEVICE_CPU), testing::Values(std::map()) ); +const auto params4Ddynamic = testing::Combine( + testing::ValuesIn(netPrecisions), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Precision::UNSPECIFIED), + testing::Values(InferenceEngine::Layout::NCHW), + testing::Values(InferenceEngine::Layout::ANY), + testing::ValuesIn(inputDynamicShape4D), + testing::ValuesIn(axis4D), + testing::Values(CommonTestUtils::DEVICE_CPU), + testing::Values(std::map()) +); + INSTANTIATE_TEST_SUITE_P( - smoke_SoftMax4D, + smoke_SoftMax4D_static, SoftMaxLayerTest, - params4D, + params2D_static, + SoftMaxLayerTest::getTestCaseName +); + +INSTANTIATE_TEST_SUITE_P( + smoke_SoftMax4D_dynamic, + SoftMaxLayerTest, + params2D_dynamic, SoftMaxLayerTest::getTestCaseName ); diff --git a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/subgraph_tests/concat_resize_concat.cpp b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/subgraph_tests/concat_resize_concat.cpp index 7c4a914624e..17fd3b2d186 100644 --- a/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/subgraph_tests/concat_resize_concat.cpp +++ b/inference-engine/tests/functional/plugin/cpu/shared_tests_instances/subgraph_tests/concat_resize_concat.cpp @@ -92,6 +92,7 @@ protected: ngraph::ResultVector outputs; outputs.push_back(std::make_shared(outputNode)); function = std::make_shared(outputs, inputs); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/activation.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/activation.cpp index c7342e95517..587b0c82c3e 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/activation.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/activation.cpp @@ -71,6 +71,7 @@ protected: auto activation = ngraph::builder::makeActivation(params[0], ngPrc, activationType, shapes.second, constantsValue); activation->get_rt_info() = getCPUInfo(); function = std::make_shared(ngraph::NodeVector{activation}, params, "Activation"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Precision netPrecision; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/adaptive_pooling.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/adaptive_pooling.cpp index e8232476ec4..cd1e4db1724 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/adaptive_pooling.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/adaptive_pooling.cpp @@ -81,6 +81,7 @@ protected: threshold = 1e-2; function = (mode == "max" ? std::make_shared(adapoolMax->outputs(), params, "AdaPoolMax") : std::make_shared(adapoolAvg->outputs(), params, "AdaPoolAvg")); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/batch_to_space.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/batch_to_space.cpp index a1c583adfcc..5532e2e95d7 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/batch_to_space.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/batch_to_space.cpp @@ -55,6 +55,7 @@ protected: b2s->get_rt_info() = getCPUInfo(); ngraph::ResultVector results{std::make_shared(b2s)}; function = std::make_shared(results, params, "BatchToSpace"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/concat.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/concat.cpp index 786abb33e45..dd5a71d2772 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/concat.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/concat.cpp @@ -56,6 +56,7 @@ protected: auto concat = std::make_shared(paramOuts, axis); function = makeNgraphFunction(ngPrc, params, concat, "concat"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convert_to_plugin_specific_node.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convert_to_plugin_specific_node.cpp index 204cf031f02..6e3d75b5209 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convert_to_plugin_specific_node.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convert_to_plugin_specific_node.cpp @@ -63,6 +63,7 @@ protected: auto powerStatic = ngraph::builder::makeEltwise(inputs[0], inputs[1], nodeType); function = std::make_shared(powerStatic, ParameterVector{param}, "ConvertToPluginSpecificNode"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution.cpp index b8d447d5a27..cb537cb0ae3 100755 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution.cpp @@ -18,13 +18,13 @@ using LayerTestsDefinitions::convSpecificParams; using LayerTestsDefinitions::convLayerTestParamsSet; typedef std::tuple< - convLayerTestParamsSet, - CPUSpecificParams, - fusingSpecificParams, - std::map > convLayerCPUTestParamsSet; + convLayerTestParamsSet, + CPUSpecificParams, + fusingSpecificParams, + std::map > convLayerCPUTestParamsSet; class ConvolutionLayerCPUTest : public testing::WithParamInterface, - virtual public LayerTestsUtils::LayerTestsCommon, public CpuTestWithFusing { + virtual public LayerTestsUtils::LayerTestsCommon, public CpuTestWithFusing { public: static std::string getTestCaseName(const testing::TestParamInfo& obj) { convLayerTestParamsSet basicParamsSet; @@ -35,7 +35,7 @@ public: std::ostringstream result; result << LayerTestsDefinitions::ConvolutionLayerTest::getTestCaseName(testing::TestParamInfo( - basicParamsSet, 0)); + basicParamsSet, 0)); result << CPUTestsBase::getTestCaseName(cpuParams); result << CpuTestWithFusing::getTestCaseName(fusingParams); @@ -116,9 +116,11 @@ protected: auto paramOuts = ngraph::helpers::convert2OutputVector(ngraph::helpers::castOps2Nodes(inputParams)); auto convolutionNode = ngraph::builder::makeConvolution(paramOuts.front(), ngPrc, kernel, stride, padBegin, - padEnd, dilation, padType, convOutChannels); + padEnd, dilation, padType, convOutChannels); function = makeNgraphFunction(ngPrc, inputParams, convolutionNode, "Convolution"); + functionRefs = ngraph::clone_function(*function); + function->set_friendly_name("convolutionRefs"); } }; @@ -206,13 +208,13 @@ const std::vector inputShapesPlain2Blocked3d = { {1, 1, 7, 7, 7}, {1 /* INSTANCES */ /* ============= Convolution (Gemm 2D) ============= */ const auto convParams_ExplicitPadding_GEMM_2D = ::testing::Combine( - ::testing::ValuesIn(kernels2d), - ::testing::ValuesIn(strides2d), - ::testing::ValuesIn(padBegins2d), - ::testing::ValuesIn(padEnds2d), - ::testing::ValuesIn(dilations2d), - ::testing::ValuesIn(numOutChannels_Gemm), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2d), + ::testing::ValuesIn(strides2d), + ::testing::ValuesIn(padBegins2d), + ::testing::ValuesIn(padEnds2d), + ::testing::ValuesIn(dilations2d), + ::testing::ValuesIn(numOutChannels_Gemm), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const std::vector CPUParams_GEMM_2D = { @@ -221,62 +223,62 @@ const std::vector CPUParams_GEMM_2D = { }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_GEMM_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_GEMM_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 2, 12, 7, 7 })), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_2D)), - ::testing::ValuesIn(fusingParamsSet), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_GEMM_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 2, 12, 7, 7 })), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_2D)), + ::testing::ValuesIn(fusingParamsSet), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_GEMM_BF16, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_GEMM_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::BF16), - ::testing::Values(Precision::BF16), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 2, 12, 7, 7 })), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_2D)), - ::testing::ValuesIn(fusingParamsSetBF16), - ::testing::Values(cpuBF16PluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_GEMM_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::BF16), + ::testing::Values(Precision::BF16), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 2, 12, 7, 7 })), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_2D)), + ::testing::ValuesIn(fusingParamsSetBF16), + ::testing::Values(cpuBF16PluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_GEMM_I8, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_GEMM_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::I8), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 2, 12, 7, 7 })), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_2D)), - ::testing::Values(fusingSum), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_GEMM_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::I8), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 2, 12, 7, 7 })), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_2D)), + ::testing::Values(fusingSum), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= Convolution (GEMM 3D) ============= */ const auto convParams_ExplicitPadding_GEMM_3D = ::testing::Combine( - ::testing::ValuesIn(kernels3d), - ::testing::ValuesIn(strides3d), - ::testing::ValuesIn(padBegins3d), - ::testing::ValuesIn(padEnds3d), - ::testing::ValuesIn(dilations3d), - ::testing::ValuesIn(numOutChannels_Gemm), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels3d), + ::testing::ValuesIn(strides3d), + ::testing::ValuesIn(padBegins3d), + ::testing::ValuesIn(padEnds3d), + ::testing::ValuesIn(dilations3d), + ::testing::ValuesIn(numOutChannels_Gemm), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const std::vector CPUParams_GEMM_3D = { @@ -285,62 +287,62 @@ const std::vector CPUParams_GEMM_3D = { }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_3D_GEMM_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_GEMM_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 2, 12, 7, 7, 7 })), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_3D)), - ::testing::ValuesIn(fusingParamsSet), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_GEMM_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 2, 12, 7, 7, 7 })), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_3D)), + ::testing::ValuesIn(fusingParamsSet), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_3D_GEMM_BF16, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_GEMM_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::BF16), - ::testing::Values(Precision::BF16), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 2, 12, 7, 7, 7 })), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_3D)), - ::testing::ValuesIn(fusingParamsSetBF16), - ::testing::Values(cpuBF16PluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_GEMM_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::BF16), + ::testing::Values(Precision::BF16), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 2, 12, 7, 7, 7 })), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_3D)), + ::testing::ValuesIn(fusingParamsSetBF16), + ::testing::Values(cpuBF16PluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_3D_GEMM_I8, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_GEMM_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::I8), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 2, 12, 7, 7, 7 })), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_3D)), - ::testing::Values(fusingSum), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_GEMM_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::I8), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 2, 12, 7, 7, 7 })), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_GEMM_3D)), + ::testing::Values(fusingSum), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= Convolution (2D) ============= */ const auto convParams_ExplicitPadding_2D = ::testing::Combine( - ::testing::ValuesIn(kernels2d), - ::testing::ValuesIn(strides2d), - ::testing::ValuesIn(padBegins2d), - ::testing::ValuesIn(padEnds2d), - ::testing::ValuesIn(dilations2d), - ::testing::ValuesIn(numOutChannels), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2d), + ::testing::ValuesIn(strides2d), + ::testing::ValuesIn(padBegins2d), + ::testing::ValuesIn(padEnds2d), + ::testing::ValuesIn(dilations2d), + ::testing::ValuesIn(numOutChannels), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const std::vector CPUParams_2D = { @@ -353,52 +355,52 @@ const std::vector CPUParams_2D = { }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_2D)), - ::testing::ValuesIn(fusingParamsSet), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_2D)), + ::testing::ValuesIn(fusingParamsSet), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_BF16, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::BF16), - ::testing::Values(Precision::BF16), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_2D, conv_avx512_2D_nspc})), - ::testing::ValuesIn(fusingParamsSetBF16), - ::testing::Values(cpuBF16PluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::BF16), + ::testing::Values(Precision::BF16), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_2D, conv_avx512_2D_nspc})), + ::testing::ValuesIn(fusingParamsSetBF16), + ::testing::Values(cpuBF16PluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_I8, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::I8), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_2D)), - ::testing::Values(fusingSum), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::I8), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_2D)), + ::testing::Values(fusingSum), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); const std::vector CPUParams_2D_plain_to_blocked = { conv_sse42_plain_to_blocked_2D, @@ -407,103 +409,103 @@ const std::vector CPUParams_2D_plain_to_blocked = { }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_PlainToBlocked_2D_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapesPlain2Blocked2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_2D_plain_to_blocked)), - ::testing::Values(emptyFusingSpec), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapesPlain2Blocked2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_2D_plain_to_blocked)), + ::testing::Values(emptyFusingSpec), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_PlainToBlocked_2D_BF16, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::BF16), - ::testing::Values(Precision::BF16, Precision::FP32), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapesPlain2Blocked2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_plain_to_blocked_2D})), - ::testing::Values(emptyFusingSpec), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::BF16), + ::testing::Values(Precision::BF16, Precision::FP32), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapesPlain2Blocked2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_plain_to_blocked_2D})), + ::testing::Values(emptyFusingSpec), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= Convolution (3D) ============= */ const auto convParams_ExplicitPadding_3D = ::testing::Combine( - ::testing::ValuesIn(kernels3d), - ::testing::ValuesIn(strides3d), - ::testing::ValuesIn(padBegins3d), - ::testing::ValuesIn(padEnds3d), - ::testing::ValuesIn(dilations3d), - ::testing::ValuesIn(numOutChannels), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels3d), + ::testing::ValuesIn(strides3d), + ::testing::ValuesIn(padBegins3d), + ::testing::ValuesIn(padEnds3d), + ::testing::ValuesIn(dilations3d), + ::testing::ValuesIn(numOutChannels), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const std::vector CPUParams_3D = { - //conv_sse42_3D, // not supported jit_sse42 for 3d - conv_avx2_3D, - conv_avx512_3D, - conv_avx2_3D_nspc, - conv_avx512_3D_nspc + //conv_sse42_3D, // not supported jit_sse42 for 3d + conv_avx2_3D, + conv_avx512_3D, + conv_avx2_3D_nspc, + conv_avx512_3D_nspc }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_3D_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes3d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_3D)), - ::testing::ValuesIn(fusingParamsSet), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes3d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_3D)), + ::testing::ValuesIn(fusingParamsSet), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_3D_BF16, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::BF16), - ::testing::Values(Precision::BF16), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes3d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_3D, conv_avx512_3D_nspc})), - ::testing::ValuesIn(fusingParamsSetBF16), - ::testing::Values(cpuBF16PluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::BF16), + ::testing::Values(Precision::BF16), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes3d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_3D, conv_avx512_3D_nspc})), + ::testing::ValuesIn(fusingParamsSetBF16), + ::testing::Values(cpuBF16PluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_3D_I8, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::I8), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes3d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_3D)), - ::testing::Values(fusingSum), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::I8), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes3d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_3D)), + ::testing::Values(fusingSum), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); const std::vector CPUParams_3D_plain_to_blocked = { conv_avx2_plain_to_blocked_3D, @@ -511,36 +513,36 @@ const std::vector CPUParams_3D_plain_to_blocked = { }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_PlainToBlocked_3D_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapesPlain2Blocked3d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_3D_plain_to_blocked)), - ::testing::Values(emptyFusingSpec), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapesPlain2Blocked3d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_3D_plain_to_blocked)), + ::testing::Values(emptyFusingSpec), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_PlainToBlocked_3D_BF16, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::BF16), - ::testing::Values(Precision::BF16, Precision::FP32), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapesPlain2Blocked3d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_plain_to_blocked_3D})), - ::testing::Values(emptyFusingSpec), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::BF16), + ::testing::Values(Precision::BF16, Precision::FP32), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapesPlain2Blocked3d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_plain_to_blocked_3D})), + ::testing::Values(emptyFusingSpec), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= Kernel_1x1 (2D) ============= */ @@ -555,61 +557,61 @@ const auto convParams_ExplicitPadding_1x1_2D = ::testing::Combine( ); const std::vector CPUParams_1x1_2D = { - conv_sse42_2D_1x1, - conv_avx2_2D_1x1, - conv_avx512_2D_1x1, - conv_sse42_2D_1x1_nspc, - conv_avx2_2D_1x1_nspc, - conv_avx512_2D_1x1_nspc + conv_sse42_2D_1x1, + conv_avx2_2D_1x1, + conv_avx512_2D_1x1, + conv_sse42_2D_1x1_nspc, + conv_avx2_2D_1x1_nspc, + conv_avx512_2D_1x1_nspc }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_1x1_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_1x1_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_1x1_2D)), - ::testing::ValuesIn(fusingParamsSet), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_1x1_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_1x1_2D)), + ::testing::ValuesIn(fusingParamsSet), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_1x1_BF16, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_1x1_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::BF16), - ::testing::Values(Precision::BF16), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_2D_1x1, conv_avx512_2D_1x1_nspc})), - ::testing::ValuesIn(fusingParamsSetBF16), - ::testing::Values(cpuBF16PluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_1x1_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::BF16), + ::testing::Values(Precision::BF16), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice({conv_avx512_2D_1x1, conv_avx512_2D_1x1_nspc})), + ::testing::ValuesIn(fusingParamsSetBF16), + ::testing::Values(cpuBF16PluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Conv_2D_1x1_I8, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_ExplicitPadding_1x1_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::I8), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_1x1_2D)), - ::testing::Values(fusingSum), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_ExplicitPadding_1x1_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::I8), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_1x1_2D)), + ::testing::Values(fusingSum), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= Convolution (1D) ============= */ /* ============= Convolution params (1D) ============= */ @@ -620,13 +622,13 @@ const std::vector> padEnds1d = { {0} }; const std::vector dilations1d = { {1}, {2} }; const auto convParams_1D = ::testing::Combine( - ::testing::ValuesIn(kernels1d), - ::testing::ValuesIn(strides1d), - ::testing::ValuesIn(padBegins1d), - ::testing::ValuesIn(padEnds1d), - ::testing::ValuesIn(dilations1d), - ::testing::ValuesIn(numOutChannels), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels1d), + ::testing::ValuesIn(strides1d), + ::testing::ValuesIn(padBegins1d), + ::testing::ValuesIn(padEnds1d), + ::testing::ValuesIn(dilations1d), + ::testing::ValuesIn(numOutChannels), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const std::vector CPUParams_1D = { @@ -636,20 +638,20 @@ const std::vector CPUParams_1D = { }; INSTANTIATE_TEST_SUITE_P(smoke_Conv_1D, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_1D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 2, 64, 7})), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_1D)), - ::testing::Values(fusingAddPerChannel), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_1D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 2, 64, 7})), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_1D)), + ::testing::Values(fusingAddPerChannel), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= Jit Planar ============= */ @@ -671,20 +673,20 @@ const auto convParams_Planar_ExplicitPadding_2D = ::testing::Combine( ); INSTANTIATE_TEST_SUITE_P(smoke_Conv_Jit_Planar_2D_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_Planar_ExplicitPadding_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes2d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_Jit_Planar_2D)), - ::testing::Values(emptyFusingSpec, fusingRelu), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_Planar_ExplicitPadding_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes2d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_Jit_Planar_2D)), + ::testing::Values(emptyFusingSpec, fusingRelu), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= Convolution planar params (3D) ============= */ const std::vector CPUParams_Jit_Planar_3D = { @@ -704,20 +706,20 @@ const auto convParams_Planar_ExplicitPadding_3D = ::testing::Combine( ); INSTANTIATE_TEST_SUITE_P(smoke_Conv_Jit_Planar_3D_FP32, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_Planar_ExplicitPadding_3D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::ValuesIn(inputShapes3d), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_Jit_Planar_3D)), - ::testing::Values(emptyFusingSpec, fusingRelu), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_Planar_ExplicitPadding_3D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::ValuesIn(inputShapes3d), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(CPUParams_Jit_Planar_3D)), + ::testing::Values(emptyFusingSpec, fusingRelu), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); /* ============= */ @@ -743,31 +745,31 @@ const std::vector> padEnds2d = { {0, 0} }; const std::vector dilations2d = { {1, 1} }; const auto convParams_2D = ::testing::Combine( - ::testing::ValuesIn(kernels2d), - ::testing::ValuesIn(strides2d), - ::testing::ValuesIn(padBegins2d), - ::testing::ValuesIn(padEnds2d), - ::testing::ValuesIn(dilations2d), - ::testing::ValuesIn(numOutChannels), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2d), + ::testing::ValuesIn(strides2d), + ::testing::ValuesIn(padBegins2d), + ::testing::ValuesIn(padEnds2d), + ::testing::ValuesIn(dilations2d), + ::testing::ValuesIn(numOutChannels), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); INSTANTIATE_TEST_SUITE_P(smoke_Conv_winograd, ConvolutionLayerCPUTest, - ::testing::Combine( - ::testing::Combine( - convParams_2D, - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::FP32), - ::testing::Values(Precision::UNSPECIFIED), - ::testing::Values(Layout::ANY), - ::testing::Values(Layout::ANY), - ::testing::Values(std::vector({ 1, 16, 10, 10 })), - ::testing::Values(CommonTestUtils::DEVICE_CPU)), - ::testing::ValuesIn(filterCPUInfoForDevice(std::vector{conv_winograd})), - ::testing::ValuesIn(fusingParamsSet), - ::testing::Values(cpuEmptyPluginConfig)), - ConvolutionLayerCPUTest::getTestCaseName); + ::testing::Combine( + ::testing::Combine( + convParams_2D, + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::FP32), + ::testing::Values(Precision::UNSPECIFIED), + ::testing::Values(Layout::ANY), + ::testing::Values(Layout::ANY), + ::testing::Values(std::vector({ 1, 16, 10, 10 })), + ::testing::Values(CommonTestUtils::DEVICE_CPU)), + ::testing::ValuesIn(filterCPUInfoForDevice(std::vector{conv_winograd})), + ::testing::ValuesIn(fusingParamsSet), + ::testing::Values(cpuEmptyPluginConfig)), + ConvolutionLayerCPUTest::getTestCaseName); } // namespace winograd -} // namespace CPULayerTestsDefinitions +} // namespace CPULayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution_backprop_data.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution_backprop_data.cpp index df0fdc1e2ab..95931a1e159 100755 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution_backprop_data.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/convolution_backprop_data.cpp @@ -95,6 +95,7 @@ protected: } function = makeNgraphFunction(ngPrc, inputParams, deconvolutionNode, "convolutionBackpropData"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/depth_to_space.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/depth_to_space.cpp index a5e54532001..219f82e9457 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/depth_to_space.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/depth_to_space.cpp @@ -55,6 +55,7 @@ protected: d2s->get_rt_info() = getCPUInfo(); ngraph::ResultVector results{std::make_shared(d2s)}; function = std::make_shared(results, params, "DepthToSpace"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/eltwise.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/eltwise.cpp index f347546ed7f..d900c4ae8c7 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/eltwise.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/eltwise.cpp @@ -16,7 +16,7 @@ typedef std::tuple< CPUSpecificParams> EltwiseLayerCPUTestParamsSet; class EltwiseLayerCPUTest : public testing::WithParamInterface, - virtual public LayerTestsUtils::LayerTestsCommon, public CPUTestsBase { + virtual public LayerTestsUtils::LayerTestsCommon, public CPUTestsBase { public: static std::string getTestCaseName(testing::TestParamInfo obj) { LayerTestsDefinitions::EltwiseTestParams basicParamsSet; @@ -37,24 +37,26 @@ protected: CPUSpecificParams cpuParams; std::tie(basicParamsSet, cpuParams) = this->GetParam(); - std::vector> inputShapes; + std::pair, std::vector>> shapes; InferenceEngine::Precision netPrecision; ngraph::helpers::InputLayerType secondaryInputType; CommonTestUtils::OpType opType; ngraph::helpers::EltwiseTypes eltwiseType; std::map additional_config; - std::tie(inputShapes, eltwiseType, secondaryInputType, opType, netPrecision, inPrc, outPrc, inLayout, targetDevice, additional_config) = basicParamsSet; + std::tie(shapes, eltwiseType, secondaryInputType, opType, netPrecision, inPrc, outPrc, inLayout, targetDevice, additional_config) = basicParamsSet; + targetStaticShapes = shapes.second; + inputDynamicShapes = shapes.first; std::tie(inFmts, outFmts, priority, selectedType) = cpuParams; auto ngPrc = FuncTestUtils::PrecisionUtils::convertIE2nGraphPrc(netPrecision); selectedType = getPrimitiveType() + "_" + netPrecision.name(); - std::vector inputShape1, inputShape2; - if (inputShapes.size() == 1) { - inputShape1 = inputShape2 = inputShapes.front(); - } else if (inputShapes.size() == 2) { - inputShape1 = inputShapes.front(); - inputShape2 = inputShapes.back(); + ngraph::Shape inputShape1 = targetStaticShapes.front().front(), inputShape2 = targetStaticShapes.front().back(); + if (targetStaticShapes.front().size() == 1) { + inputShape1 = inputShape2 = targetStaticShapes.front().front(); + } else if (targetStaticShapes.front().size() == 2) { + inputShape1 = targetStaticShapes.front().front(); + inputShape2 = targetStaticShapes.front().back(); } else { IE_THROW() << "Incorrect number of input shapes"; } @@ -100,6 +102,8 @@ protected: auto eltwise = ngraph::builder::makeEltwise(input[0], secondaryInput, eltwiseType); function = makeNgraphFunction(ngPrc, input, eltwise, "Eltwise"); + functionRefs = ngraph::clone_function(*function); + functionRefs->set_friendly_name("EltwiseRefs"); } }; @@ -140,11 +144,11 @@ std::map additional_config; std::vector netPrc = {Precision::BF16, Precision::FP32}; -std::vector>> inShapes_4D = { - {{2, 4, 4, 1}}, - {{2, 17, 5, 4}}, - {{2, 17, 5, 4}, {1, 17, 1, 1}}, - {{2, 17, 5, 1}, {1, 17, 1, 4}}, +std::vector, std::vector>>> inShapes_4D = { + {{}, {{{2, 4, 4, 1}}}}, + {{}, {{{2, 17, 5, 4}}}}, + {{}, {{{2, 17, 5, 4}, {1, 17, 1, 1}}}}, + {{}, {{{2, 17, 5, 1}, {1, 17, 1, 4}}}}, }; std::vector cpuParams_4D = { @@ -185,11 +189,11 @@ const auto params_4D_emptyCPUSpec = ::testing::Combine( INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_4D_emptyCPUSpec, EltwiseLayerCPUTest, params_4D_emptyCPUSpec, EltwiseLayerCPUTest::getTestCaseName); -std::vector>> inShapes_5D = { - {{2, 4, 3, 4, 1}}, - {{2, 17, 7, 5, 4}}, - {{2, 17, 6, 5, 4}, {1, 17, 6, 1, 1}}, - {{2, 17, 6, 5, 1}, {1, 17, 1, 1, 4}}, +std::vector, std::vector>>> inShapes_5D = { + {{}, {{{2, 4, 3, 4, 1}}}}, + {{}, {{{2, 17, 7, 5, 4}}}}, + {{}, {{{2, 17, 6, 5, 4}, {1, 17, 6, 1, 1}}}}, + {{}, {{{2, 17, 6, 5, 1}, {1, 17, 1, 1, 4}}}}, }; std::vector cpuParams_5D = { @@ -230,9 +234,9 @@ const auto params_5D_emptyCPUSpec = ::testing::Combine( INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_5D, EltwiseLayerCPUTest, params_5D_emptyCPUSpec, EltwiseLayerCPUTest::getTestCaseName); -std::vector>> inShapes_4D_Blocked_Planar = { - {{2, 17, 31, 3}, {2, 1, 31, 3}}, - {{2, 17, 5, 1}, {2, 1, 1, 4}}, +std::vector, std::vector>>> inShapes_4D_Blocked_Planar = { + {{}, {{{2, 17, 31, 3}, {2, 1, 31, 3}}}}, + {{}, {{{2, 17, 5, 1}, {2, 1, 1, 4}}}}, }; std::vector cpuParams_4D_Blocked_Planar = { @@ -256,9 +260,9 @@ const auto params_4D_Blocked_Planar = ::testing::Combine( INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_4D_Blocked_Planar, EltwiseLayerCPUTest, params_4D_Blocked_Planar, EltwiseLayerCPUTest::getTestCaseName); -std::vector>> inShapes_4D_Planar_Blocked = { - {{2, 1, 31, 3}, {2, 17, 31, 3}}, - {{2, 1, 1, 4}, {2, 17, 5, 1}}, +std::vector, std::vector>>> inShapes_4D_Planar_Blocked = { + {{}, {{{2, 1, 31, 3}, {2, 17, 31, 3}}}}, + {{}, {{{2, 1, 1, 4}, {2, 17, 5, 1}}}}, }; std::vector cpuParams_4D_Planar_Blocked = { @@ -282,9 +286,9 @@ const auto params_4D_Planar_Blocked = ::testing::Combine( INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_4D_Planar_Blocked, EltwiseLayerCPUTest, params_4D_Planar_Blocked, EltwiseLayerCPUTest::getTestCaseName); -std::vector>> inShapes_5D_Blocked_Planar = { - {{2, 17, 31, 4, 3}, {2, 1, 31, 1, 3}}, - {{2, 17, 5, 3, 1}, {2, 1, 1, 3, 4}}, +std::vector, std::vector>>> inShapes_5D_Blocked_Planar = { + {{}, {{{2, 17, 31, 4, 3}, {2, 1, 31, 1, 3}}}}, + {{}, {{{2, 17, 5, 3, 1}, {2, 1, 1, 3, 4}}}}, }; std::vector cpuParams_5D_Blocked_Planar = { @@ -308,9 +312,9 @@ const auto params_5D_Blocked_Planar = ::testing::Combine( INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_5D_Blocked_Planar, EltwiseLayerCPUTest, params_5D_Blocked_Planar, EltwiseLayerCPUTest::getTestCaseName); -std::vector>> inShapes_5D_Planar_Blocked = { - {{2, 1, 31, 1, 3}, {2, 17, 31, 4, 3}}, - {{2, 1, 1, 3, 4}, {2, 17, 5, 3, 1}}, +std::vector, std::vector>>> inShapes_5D_Planar_Blocked = { + {{}, {{{2, 1, 31, 1, 3}, {2, 17, 31, 4, 3}}}}, + {{}, {{{2, 1, 1, 3, 4}, {2, 17, 5, 3, 1}}}}, }; std::vector cpuParams_5D_Planar_Blocked = { @@ -334,9 +338,9 @@ const auto params_5D_Planar_Blocked = ::testing::Combine( INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_5D_Planar_Blocked, EltwiseLayerCPUTest, params_5D_Planar_Blocked, EltwiseLayerCPUTest::getTestCaseName); -std::vector>> inShapes_4D_1D = { - {{2, 17, 5, 4}, {4}}, - {{1, 3, 3, 3}, {3}}, +std::vector, std::vector>>> inShapes_4D_1D = { + {{}, {{{2, 17, 5, 4}, {4}}}}, + {{}, {{{1, 3, 3, 3}, {3}}}}, }; std::vector cpuParams_4D_1D = { @@ -361,9 +365,9 @@ const auto params_4D_1D = ::testing::Combine( INSTANTIATE_TEST_SUITE_P(smoke_CompareWithRefs_4D_1D, EltwiseLayerCPUTest, params_4D_1D, EltwiseLayerCPUTest::getTestCaseName); -std::vector>> inShapes_5D_1D = { - {{2, 17, 5, 4, 10}, {10}}, - {{1, 3, 3, 3, 3}, {3}}, +std::vector, std::vector>>> inShapes_5D_1D = { + {{}, {{{2, 17, 5, 4, 10}, {10}}}}, + {{}, {{{1, 3, 3, 3, 3}, {3}}}}, }; std::vector cpuParams_5D_1D = { diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/extract_image_patches.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/extract_image_patches.cpp index 58e532a7f1c..8f19ee98848 100755 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/extract_image_patches.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/extract_image_patches.cpp @@ -53,6 +53,7 @@ protected: inputNode, ngraph::Shape(kernel), ngraph::Strides(strides), ngraph::Shape(rates), pad_type); ngraph::ResultVector results{std::make_shared(extImgPatches)}; function = std::make_shared(results, params, "ExtractImagePatches"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/fake_quantize.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/fake_quantize.cpp index 09bc5f27a62..3413ff25670 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/fake_quantize.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/fake_quantize.cpp @@ -123,6 +123,7 @@ protected: fq->get_rt_info() = getCPUInfo(); function = std::make_shared(fq, params, "FakeQuantizeCPU"); + functionRefs = ngraph::clone_function(*function); } private: diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gather_elements.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gather_elements.cpp index 32b6b04ad69..ec427a67eef 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gather_elements.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gather_elements.cpp @@ -60,6 +60,7 @@ protected: auto activation = ngraph::builder::makeGatherElements(params[0], indicesShape, ngIPrc, axis); activation->get_rt_info() = getCPUInfo(); function = std::make_shared(ngraph::NodeVector{activation}, params, "GatherElements"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution.cpp index 814db862ed0..4eb82613228 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution.cpp @@ -104,6 +104,7 @@ protected: ngraph::builder::makeGroupConvolution(paramOuts[0], ngPrc, kernel, stride, padBegin, padEnd, dilation, padType, convOutChannels, numGroups)); function = makeNgraphFunction(ngPrc, params, groupConv, "groupConvolution"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution_backprop_data.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution_backprop_data.cpp index 1f50a43b80d..b390c30dc49 100755 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution_backprop_data.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/group_convolution_backprop_data.cpp @@ -94,6 +94,7 @@ protected: padEnd, dilation, padType, convOutChannels, numGroups, false, outputPadding)); } function = makeNgraphFunction(ngPrc, params, groupConv, "groupConvolutionBackpropData"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_cell.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_cell.cpp index 9eea07dc591..735f645cb0e 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_cell.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_cell.cpp @@ -88,6 +88,7 @@ protected: ngraph::ResultVector results{std::make_shared(gru_cell->output(0))}; function = makeNgraphFunction(ngPrc, params, gru_cell, "gru_cell"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_sequence.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_sequence.cpp index dc5c35b72dd..0da204c5bdd 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_sequence.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/gru_sequence.cpp @@ -137,6 +137,8 @@ protected: bool ti_found = ngraph::helpers::is_tensor_iterator_exist(function); EXPECT_EQ(ti_found, false); } + + functionRefs = ngraph::clone_function(*function); } void GenerateInputs() override { diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/interpolate.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/interpolate.cpp index 7392cbdb530..0bea3d744dd 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/interpolate.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/interpolate.cpp @@ -107,6 +107,7 @@ protected: selectedType += "BF16"; else selectedType += netPrecision.name(); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/logical.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/logical.cpp index d9bcddab858..fc561e4cf23 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/logical.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/logical.cpp @@ -72,6 +72,7 @@ protected: logicalNode->get_rt_info() = getCPUInfo(); function = std::make_shared(logicalNode, inputs, "Logical"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_cell.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_cell.cpp index c0fce294005..b1b99789097 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_cell.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_cell.cpp @@ -87,6 +87,7 @@ protected: std::make_shared(lstm_cell->output(1))}; function = makeNgraphFunction(ngPrc, params, lstm_cell, "lstm_cell"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_sequence.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_sequence.cpp index 4077e4755c3..03084a386a2 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_sequence.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/lstm_sequence.cpp @@ -144,6 +144,8 @@ protected: bool ti_found = ngraph::helpers::is_tensor_iterator_exist(function); EXPECT_EQ(ti_found, false); } + + functionRefs = ngraph::clone_function(*function); } void GenerateInputs() override { diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mat_mul.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mat_mul.cpp index 5d6b7061882..4966f3e2a0b 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mat_mul.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mat_mul.cpp @@ -98,6 +98,7 @@ protected: auto paramOuts = helpers::convert2OutputVector(helpers::castOps2Nodes(params)); auto matMul = builder::makeMatMul(paramOuts[0], matrixB, transpA, transpB); function = makeNgraphFunction(ngPrec, params, matMul, cpuNodeType); + functionRefs = ngraph::clone_function(*function); checkFusingPosition = false; } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mvn.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mvn.cpp index 9a69164baaa..c6e7f6204f2 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mvn.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/mvn.cpp @@ -71,6 +71,7 @@ protected: threshold = 0.015f; function = makeNgraphFunction(netPrc, param, mvn, "mvn"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/normalize.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/normalize.cpp index 401c00d5e37..52c36dbcb0d 100755 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/normalize.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/normalize.cpp @@ -57,6 +57,7 @@ protected: auto normalize = builder::makeNormalizeL2(paramOuts[0], axes, eps, eps_mode); function = makeNgraphFunction(netPrc, params, normalize, "Normalize"); + functionRefs = ngraph::clone_function(*function); selectedType = "unknown_" + std::string(inPrc.name()); threshold = 0.015f; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/one_hot.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/one_hot.cpp index e3f083e7460..f75b21b14fd 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/one_hot.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/one_hot.cpp @@ -73,6 +73,7 @@ protected: auto oneHot = std::make_shared(inputParams.front(), depthConst, onConst, offConst, axis); function = makeNgraphFunction(ngPrc, inputParams, oneHot, "OneHot"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pad.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pad.cpp index fb9cf3df0bb..023237bb06c 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pad.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pad.cpp @@ -58,6 +58,7 @@ protected: pad->get_rt_info() = getCPUInfo(); ngraph::ResultVector results{std::make_shared(pad)}; function = std::make_shared(results, params, "pad"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pooling.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pooling.cpp index 70e732fdb3b..2220563c287 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pooling.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/pooling.cpp @@ -86,6 +86,7 @@ protected: function = makeNgraphFunction(ngPrc, params, pooling, "Pooling"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/psroi_pooling.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/psroi_pooling.cpp index 01131bf0b24..287a3b783d0 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/psroi_pooling.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/psroi_pooling.cpp @@ -97,6 +97,7 @@ protected: threshold = 1e-2; const ngraph::ResultVector results{std::make_shared(psroi)}; function = std::make_shared(results, params, "PSROIPooling"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/reduce_ops.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/reduce_ops.cpp index 222651e51ff..b7d2a69677b 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/reduce_ops.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/reduce_ops.cpp @@ -74,6 +74,7 @@ protected: const ngraph::ResultVector results{std::make_shared(reduce)}; function = std::make_shared(results, params, "Reduce"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr GenerateInput(const InferenceEngine::InputInfo &info) const override { if (ngraph::helpers::ReductionType::Prod == reductionType) { diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/region_yolo.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/region_yolo.cpp index e5a00a813f7..78a3bd77495 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/region_yolo.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/region_yolo.cpp @@ -77,6 +77,7 @@ protected: attributes.do_softmax, mask, attributes.start_axis, attributes.end_axis); function = makeNgraphFunction(ngPrc, paramRegionYolo, region_yolo, "RegionYolo"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_cell.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_cell.cpp index c81a856c3ec..f7cb7b354ef 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_cell.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_cell.cpp @@ -82,6 +82,7 @@ protected: WRB, hidden_size, activations, {}, {}, clip); ngraph::ResultVector results{std::make_shared(rnn_cell)}; function = makeNgraphFunction(ngPrc, params, rnn_cell, "rnn_cell"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_sequence.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_sequence.cpp index 80834bc9c44..3c8ea3416f3 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_sequence.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/rnn_sequence.cpp @@ -117,6 +117,7 @@ protected: bool ti_found = ngraph::helpers::is_tensor_iterator_exist(function); EXPECT_EQ(ti_found, false); } + functionRefs = ngraph::clone_function(*function); } void GenerateInputs() override { diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roi_pooling.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roi_pooling.cpp index ab7157be10c..b4bea0aa1a9 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roi_pooling.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roi_pooling.cpp @@ -144,6 +144,7 @@ protected: ngraph::ResultVector results{std::make_shared(roi_pooling)}; function = makeNgraphFunction(ngPrc, params, roi_pooling, "roi_pooling"); + functionRefs = ngraph::clone_function(*function); selectedType += "_"; selectedType += netPrecision.name(); diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roialign.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roialign.cpp index 78a6fdcd0cb..0823f9eab6b 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roialign.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/roialign.cpp @@ -98,6 +98,7 @@ protected: threshold = 1e-2; const ngraph::ResultVector results{std::make_shared(roialign)}; function = std::make_shared(results, params, "ROIAlign"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/shuffle_channels.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/shuffle_channels.cpp index 9404d7be2a4..baf60f6b3bc 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/shuffle_channels.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/shuffle_channels.cpp @@ -63,6 +63,8 @@ protected: } selectedType.push_back('_'); selectedType += netPrecision.name(); + + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/softmax.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/softmax.cpp index ec619350737..1f86a18b893 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/softmax.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/softmax.cpp @@ -67,6 +67,7 @@ protected: const auto softMax = std::make_shared(paramOuts.at(0), config.axis); function = makeNgraphFunction(ngPrc, params, softMax, "SoftMax"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_batch.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_batch.cpp index 61301aebba7..648f0fc97c3 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_batch.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_batch.cpp @@ -60,6 +60,7 @@ protected: s2b->get_rt_info() = getCPUInfo(); ngraph::ResultVector results{std::make_shared(s2b)}; function = std::make_shared(results, params, "SpaceToBatch"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_depth.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_depth.cpp index 4c3bdbbba8d..233765c1db4 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_depth.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/space_to_depth.cpp @@ -55,6 +55,7 @@ protected: d2s->get_rt_info() = getCPUInfo(); ngraph::ResultVector results{std::make_shared(d2s)}; function = std::make_shared(results, params, "SpaceToDepth"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/split.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/split.cpp index 14b83c08ae0..c3f50143853 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/split.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/split.cpp @@ -79,6 +79,7 @@ protected: } split->get_rt_info() = getCPUInfo(); function = std::make_shared(results, params, "split"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/strided_slice.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/strided_slice.cpp index b01e2455a29..e019581e07d 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/strided_slice.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/strided_slice.cpp @@ -71,6 +71,7 @@ protected: ngraph::ResultVector results{std::make_shared(ss)}; function = std::make_shared(results, params, "StridedSlice"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/transpose.cpp b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/transpose.cpp index 9708b8d50ec..6d7292b96d7 100644 --- a/inference-engine/tests/functional/plugin/cpu/single_layer_tests/transpose.cpp +++ b/inference-engine/tests/functional/plugin/cpu/single_layer_tests/transpose.cpp @@ -67,6 +67,7 @@ protected: transpose->get_rt_info() = getCPUInfo(); const ngraph::ResultVector results{std::make_shared(transpose)}; function = std::make_shared(results, params, "Transpose"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/add_convert_to_reorder.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/add_convert_to_reorder.cpp index 1b2265b1be5..1de3028d9f3 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/add_convert_to_reorder.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/add_convert_to_reorder.cpp @@ -35,6 +35,7 @@ public: auto gather = std::make_shared(paramOuts[0], indicesNode, axisNode); ngraph::ResultVector results{std::make_shared(gather)}; function = std::make_shared(results, params, "gather"); + functionRefs = ngraph::clone_function(*function); } std::vector>> CalculateRefs() override { // Convert the second input constant precision to i64 to run the reference function diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/concat_const_inplace.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/concat_const_inplace.cpp index ca99be789a9..eecd4ae6c87 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/concat_const_inplace.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/concat_const_inplace.cpp @@ -42,6 +42,7 @@ public: ngraph::ResultVector results{std::make_shared(concat)}; function = std::make_shared(results, inputParams, "ConcatConstantInPlace"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv3d_reshape.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv3d_reshape.cpp index fd65019e6ac..c9e60e990e6 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv3d_reshape.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv3d_reshape.cpp @@ -75,6 +75,7 @@ protected: } function = std::make_shared(results, inputParams, "Conv3dReshape"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_concat.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_concat.cpp index dd31d2ed847..c9acfa7ac53 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_concat.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_concat.cpp @@ -109,6 +109,7 @@ void ConvConcatSubgraphTest::SetUp() { ngraph::ResultVector results{std::make_shared(concat)}; function = std::make_shared(results, inputParams, "convolutionConcat"); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConvConcatSubgraphTest, CompareWithRefs) { diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_maxpool_activ.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_maxpool_activ.cpp index bc8600fd853..05895bd29a3 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_maxpool_activ.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/conv_maxpool_activ.cpp @@ -59,6 +59,7 @@ protected: } function = makeNgraphFunction(element::f32, inputParams, pooling, "ConvPoolActiv"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/eltwise_chain.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/eltwise_chain.cpp index fd10413a926..1cd9948bfd8 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/eltwise_chain.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/eltwise_chain.cpp @@ -105,6 +105,7 @@ protected: ngraph::ResultVector results{std::make_shared(eltwiseOps[eltwiseOps.size() - 1])}; function = std::make_shared(results, ngraphParam, "eltwise_chain"); } + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_muladd_ewsimple.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_muladd_ewsimple.cpp index 76e9e453ce4..6106e7f83ac 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_muladd_ewsimple.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_muladd_ewsimple.cpp @@ -29,6 +29,7 @@ void FuseMulAddAndEwSimpleTest::SetUp() { std::tie(inputShape, inPrec) = this->GetParam(); CreateGraph(); + functionRefs = ngraph::clone_function(*function); } const auto mulAddAndEwSimpleCommonParams = ::testing::Combine( diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_scaleshift_and_fakequantize.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_scaleshift_and_fakequantize.cpp index 675636f4468..a979ab49f53 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_scaleshift_and_fakequantize.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_scaleshift_and_fakequantize.cpp @@ -76,6 +76,7 @@ protected: quantizeIntervals[3]); ngraph::ResultVector results{std::make_shared(quantize)}; function = std::make_shared(results, ngraph::ParameterVector{param}, "FuseScaleShiftAndQuantize"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_transpose_reorder.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_transpose_reorder.cpp index 3f8eab0dd93..f4ef0403eb2 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_transpose_reorder.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/fuse_transpose_reorder.cpp @@ -48,6 +48,7 @@ void FuseTransposeAndReorderTest::SetUp() { std::tie(inputShape, inPrec) = this->GetParam(); CreateGraph(); + functionRefs = ngraph::clone_function(*function); } const auto fuseTransposeAndReorderCommonParams = ::testing::Combine( diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/input_noreorder_eltwise_bf16.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/input_noreorder_eltwise_bf16.cpp index 180aa1b2611..e14afef1fe6 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/input_noreorder_eltwise_bf16.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/input_noreorder_eltwise_bf16.cpp @@ -33,6 +33,7 @@ protected: auto eltwise = ngraph::builder::makeEltwise(input[0], secondaryInput, eltwiseType); function = makeNgraphFunction(ngPrc, input, eltwise, "Eltwise"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/not_fused_conv_simple_op.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/not_fused_conv_simple_op.cpp index f7a9f2f1aa8..67934a9ec12 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/not_fused_conv_simple_op.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/not_fused_conv_simple_op.cpp @@ -36,6 +36,7 @@ protected: NodeVector results{postOpCandidate, secondConsumpt}; function = std::make_shared(results, inputParams, "NotFusedConvSimpleOp"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/reshape_fc.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/reshape_fc.cpp index 50a6218f63f..402689dae04 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/reshape_fc.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/reshape_fc.cpp @@ -60,6 +60,7 @@ protected: auto matMul = builder::makeMatMul(reshape, matrixB, false, transpB); function = makeNgraphFunction(element::f32, inputParams, matMul, "ReshapeFC"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/tile_with_two_output_edges.cpp b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/tile_with_two_output_edges.cpp index 1b181607fdb..0f0f672d4d3 100644 --- a/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/tile_with_two_output_edges.cpp +++ b/inference-engine/tests/functional/plugin/cpu/subgraph_tests/src/tile_with_two_output_edges.cpp @@ -29,6 +29,7 @@ protected: NodeVector results{add1, add2}; function = std::make_shared(results, inputParams, "TileWithTwoOutputEdges"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_act_conv_act.cpp b/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_act_conv_act.cpp index 18feccd8cbc..8d4fadf0dc9 100644 --- a/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_act_conv_act.cpp +++ b/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_act_conv_act.cpp @@ -131,6 +131,7 @@ protected: auto relu2 = std::make_shared(conv); ngraph::ResultVector results{std::make_shared(relu2)}; function = std::make_shared(results, params, "ExportImportNetwork"); + functionRefs = ngraph::clone_function(*function); } private: diff --git a/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_memory_layer.cpp b/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_memory_layer.cpp index f0deafaf071..58b2fe267dd 100644 --- a/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_memory_layer.cpp +++ b/inference-engine/tests/functional/plugin/gna/Import_export_tests/import_export_memory_layer.cpp @@ -96,6 +96,7 @@ protected: relu->add_control_dependency(mem_w); ngraph::ResultVector results{std::make_shared(relu)}; function = std::make_shared(results, params, "ExportImportNetwork"); + functionRefs = ngraph::clone_function(*function); } private: diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/4d_eltwise.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/4d_eltwise.cpp index 00f32649eb9..5add4d8f9d9 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/4d_eltwise.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/4d_eltwise.cpp @@ -72,6 +72,7 @@ class Eltwise4dBroadcast : public testing::WithParamInterface, ngraph::ResultVector results{ std::make_shared(reshape2) }; function = std::make_shared(results, params, "Eltwise4dBroadcast"); + functionRefs = ngraph::clone_function(*function); } }; @@ -120,6 +121,7 @@ protected: ngraph::ResultVector results{ std::make_shared(reshape3) }; function = std::make_shared(results, params, "Eltwise4dMultipleInput"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/act_maxpool_reordering.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/act_maxpool_reordering.cpp index eea2de7d6e4..8f5bf8d5228 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/act_maxpool_reordering.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/act_maxpool_reordering.cpp @@ -90,6 +90,7 @@ protected: ngraph::ResultVector results{ std::make_shared(maxpool)}; function = std::make_shared(results, inputVector, "ActMaxpoolReordering"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/broadcast_const_with_fq.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/broadcast_const_with_fq.cpp index 085d69999f2..cdbec284157 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/broadcast_const_with_fq.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/broadcast_const_with_fq.cpp @@ -64,6 +64,7 @@ protected: auto add = std::make_shared(fakeQuantize1, fakeQuantize2); ngraph::ResultVector results{ std::make_shared(add)}; function = std::make_shared(results, params, "BroadcastConstWithFq"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/convert_dwsc_to_scaleshifts.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/convert_dwsc_to_scaleshifts.cpp index 8a4c3744eae..e2d390b7304 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/convert_dwsc_to_scaleshifts.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/convert_dwsc_to_scaleshifts.cpp @@ -118,6 +118,7 @@ protected: auto result = std::make_shared(lastOp); function = std::make_shared(ResultVector{result}, ParameterVector{input}); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/convert_padded_to_valid_conv.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/convert_padded_to_valid_conv.cpp index 4dd38e857bb..362499df674 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/convert_padded_to_valid_conv.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/convert_padded_to_valid_conv.cpp @@ -200,6 +200,7 @@ protected: auto result = std::make_shared(lastOp); function = std::make_shared(ResultVector{result}, ParameterVector{input}); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/decompose_2d_conv.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/decompose_2d_conv.cpp index 346e2dd83ce..4560c898a06 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/decompose_2d_conv.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/decompose_2d_conv.cpp @@ -199,6 +199,7 @@ protected: auto result = std::make_shared(lastOp); function = std::make_shared(ResultVector{result}, ParameterVector{input}); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/eltwise_split_over_channels_pass.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/eltwise_split_over_channels_pass.cpp index dd6424be051..a52ef743749 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/eltwise_split_over_channels_pass.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/eltwise_split_over_channels_pass.cpp @@ -56,6 +56,7 @@ protected: auto mul = ngraph::builder::makeEltwise(params[0], const_mult2, ngraph::helpers::EltwiseTypes::MULTIPLY); function = std::make_shared(mul, params, "EltwiseSplitOverChannelsPassTest"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_activation.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_activation.cpp index 7e352595dcc..121e206003e 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_activation.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_activation.cpp @@ -87,6 +87,7 @@ protected: ngraph::ResultVector results{ std::make_shared(reluFQNode) }; function = std::make_shared(results, inputVector, "FQActivation"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_multiple_weights.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_multiple_weights.cpp index a4a26ba18d0..3ca8e72b0e9 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_multiple_weights.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_multiple_weights.cpp @@ -99,6 +99,7 @@ protected: ngraph::ResultVector results{ std::make_shared(add3)}; function = std::make_shared(results, params, "FQFusionWithMultipleWeights"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_sigmoid.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_sigmoid.cpp index ec3b500b608..0d0c64a4561 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_sigmoid.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_fusion_with_sigmoid.cpp @@ -41,6 +41,7 @@ protected: auto mul3 = ngraph::builder::makeEltwise(mul2, fake3, ngraph::helpers::EltwiseTypes::ADD); auto result = std::make_shared(mul3); function = std::make_shared(ngraph::ResultVector{result}, input, "fq_fusion_with_sigmoid"); + functionRefs = ngraph::clone_function(*function); } public: static std::string getTestCaseName(const testing::TestParamInfo &obj) { diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_maxpool_reordering.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_maxpool_reordering.cpp index af6d0c1a19b..c3c3e4c6c20 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_maxpool_reordering.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_maxpool_reordering.cpp @@ -104,6 +104,7 @@ protected: ngraph::ResultVector results{ std::make_shared(maxpool)}; function = std::make_shared(results, inputVector, "FQMaxPoolReorder"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_outputs_activation_.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_outputs_activation_.cpp index c684d166872..c2cd6ddba56 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_outputs_activation_.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_outputs_activation_.cpp @@ -89,6 +89,7 @@ protected: results.push_back(std::make_shared(reluFQNode)); } function = std::make_shared(results, inputVector, "FQOutputsActivation"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_with_multiple_out_connections.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_with_multiple_out_connections.cpp index b0453a20430..e49d79aea0c 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/fq_with_multiple_out_connections.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/fq_with_multiple_out_connections.cpp @@ -77,6 +77,7 @@ protected: ngraph::ResultVector results{std::make_shared(reshape2), std::make_shared(reshape3)}; function = std::make_shared(results, params, "FQFusionWithMultipleWeights"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/insert_copy_layer_before_self_concat.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/insert_copy_layer_before_self_concat.cpp index 421280a7189..2b5a32e74e5 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/insert_copy_layer_before_self_concat.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/insert_copy_layer_before_self_concat.cpp @@ -80,6 +80,7 @@ protected: results.push_back(std::make_shared(relu)); } function = std::make_shared(results, params, "InsertCopyBeforeSelfConcat"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_before_matmul.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_before_matmul.cpp index 3559ae12b97..19c9d2b3bf6 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_before_matmul.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_before_matmul.cpp @@ -91,6 +91,7 @@ protected: ngraph::ResultVector results{ std::make_shared(matmul)}; function = std::make_shared(results, params, "InsertTransposeBeforeMatmul"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_between_convs.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_between_convs.cpp index d8783a85621..b492b58fd18 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_between_convs.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/insert_transpose_between_convs.cpp @@ -100,6 +100,7 @@ protected: ngraph::ResultVector results{ std::make_shared(reshape3)}; function = std::make_shared(results, params, "InsertTransposeBetweenConvs"); + functionRefs = ngraph::clone_function(*function); } }; @@ -178,6 +179,7 @@ protected: ngraph::ResultVector results{ std::make_shared(reshape3)}; function = std::make_shared(results, params, "InsertTransposeBetweenConvs"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/layers_restrictions.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/layers_restrictions.cpp index 15d2075f5ba..9b326c6e914 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/layers_restrictions.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/layers_restrictions.cpp @@ -75,6 +75,7 @@ protected: InferenceEngine::Precision netPrecision; std::tie(netPrecision, configuration, targetDevice) = this->GetParam(); function = T::createTopology(netPrecision); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/pass_tests/remove_permutations_NHWC_to_NCHW_pass.cpp b/inference-engine/tests/functional/plugin/gna/pass_tests/remove_permutations_NHWC_to_NCHW_pass.cpp index dba170e8587..fe4a93e1f2e 100644 --- a/inference-engine/tests/functional/plugin/gna/pass_tests/remove_permutations_NHWC_to_NCHW_pass.cpp +++ b/inference-engine/tests/functional/plugin/gna/pass_tests/remove_permutations_NHWC_to_NCHW_pass.cpp @@ -102,6 +102,7 @@ class RemovePermutationsNHWCToNCHWPassTest : public testing::WithParamInterface< ngraph::ResultVector results{ std::make_shared(reshape2) }; function = std::make_shared(results, params, "RemovePermutationPass"); + functionRefs = ngraph::clone_function(*function); } }; @@ -145,6 +146,7 @@ protected: ngraph::ResultVector results{ std::make_shared(permute2) }; function = std::make_shared(results, params, "RemovePermutationPass4DOutput"); + functionRefs = ngraph::clone_function(*function); } }; @@ -240,6 +242,7 @@ class RemovePermutationsWithPoolAndActTest : public testing::WithParamInterface< ngraph::ResultVector results{ std::make_shared(reshape2) }; function = std::make_shared(results, params, "RemovePermutationPass"); + functionRefs = ngraph::clone_function(*function); } }; @@ -330,6 +333,7 @@ class RemovePermutationsWithTwoConvTest : public testing::WithParamInterface(reshape2) }; function = std::make_shared(results, params, "RemovePermutationPass"); + functionRefs = ngraph::clone_function(*function); } }; @@ -428,6 +432,7 @@ class RemovePermutationsWithEltwiseTest : public testing::WithParamInterface(reshape3) }; function = std::make_shared(results, params, "RemovePermutationPass"); + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution.cpp b/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution.cpp index 7231ec975f4..febdc56aa2c 100644 --- a/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution.cpp +++ b/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution.cpp @@ -66,16 +66,16 @@ const std::vector> inputShapesW1 = {{1, 1, 32, 1}, const std::vector numOutCannels = {4, 8, 12}; const std::vector> kernels2D = { - {5, 1}, - {4, 1}, - {1, 3}, - {1, 2}, - {2, 2}, - {7, 1}, - {3, 3}, + {5, 1}, + {4, 1}, + {1, 3}, + {1, 2}, + {2, 2}, + {7, 1}, + {3, 3}, }; const std::vector> strides2D = { - {1, 1}, + {1, 1}, }; const std::vector> padBegins2D = { {0, 0}, }; @@ -92,13 +92,13 @@ const std::vector> inputShapesMapTo1d = {{1, 1, 56, 5}, {1, 2, 64, 5}}; const auto conv2DParams_Kernels2D = ::testing::Combine( - ::testing::ValuesIn(kernels2D), - ::testing::ValuesIn(strides2D), - ::testing::ValuesIn(padBegins2D), - ::testing::ValuesIn(padEnds2D), - ::testing::ValuesIn(dilations2D), - ::testing::ValuesIn(numOutCannels2D), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2D), + ::testing::ValuesIn(strides2D), + ::testing::ValuesIn(padBegins2D), + ::testing::ValuesIn(padEnds2D), + ::testing::ValuesIn(dilations2D), + ::testing::ValuesIn(numOutCannels2D), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const auto conv2DParams_ExplicitPadding_Height1 = ::testing::Combine( ::testing::ValuesIn(kernelsH1), @@ -148,74 +148,74 @@ const auto conv2DParams_AutoPadValid_MapTo1d = ::testing::Combine( // TODO: padding isn't currently supported in GNA INSTANTIATE_TEST_SUITE_P(DISABLED_smoke_Convolution2D_ExplicitPadding_Height1, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_ExplicitPadding_Height1, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::ValuesIn(inputShapesH1), - ::testing::Values(CommonTestUtils::DEVICE_GNA)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_ExplicitPadding_Height1, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::ValuesIn(inputShapesH1), + ::testing::Values(CommonTestUtils::DEVICE_GNA)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(DISABLED_smoke_Convolution2D_ExplicitPadding_Width1, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_ExplicitPadding_Width1, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::ValuesIn(inputShapesW1), - ::testing::Values(CommonTestUtils::DEVICE_GNA)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_ExplicitPadding_Width1, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::ValuesIn(inputShapesW1), + ::testing::Values(CommonTestUtils::DEVICE_GNA)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_AutoPadValid_Height1, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_AutoPadValid_Height1, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::ValuesIn(inputShapesH1), - ::testing::Values(CommonTestUtils::DEVICE_GNA)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_AutoPadValid_Height1, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::ValuesIn(inputShapesH1), + ::testing::Values(CommonTestUtils::DEVICE_GNA)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_AutoPadValid_Width1, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_AutoPadValid_Width1, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::ValuesIn(inputShapesW1), - ::testing::Values(CommonTestUtils::DEVICE_GNA)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_AutoPadValid_Width1, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::ValuesIn(inputShapesW1), + ::testing::Values(CommonTestUtils::DEVICE_GNA)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_AutoPadValid_MapTo1d, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_AutoPadValid_MapTo1d, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::ValuesIn(inputShapesMapTo1d), - ::testing::Values(CommonTestUtils::DEVICE_GNA)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_AutoPadValid_MapTo1d, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::ValuesIn(inputShapesMapTo1d), + ::testing::Values(CommonTestUtils::DEVICE_GNA)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_Kernels2D, GnaConvolutionLayerTest, - ::testing::Combine( - conv2DParams_Kernels2D, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(input2DNCHW), - ::testing::Values(CommonTestUtils::DEVICE_GNA)), - GnaConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_Kernels2D, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(input2DNCHW), + ::testing::Values(CommonTestUtils::DEVICE_GNA)), + GnaConvolutionLayerTest::getTestCaseName); } // namespace diff --git a/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution_negative.cpp b/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution_negative.cpp index 2235a2b90fa..2108bf00301 100644 --- a/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution_negative.cpp +++ b/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/convolution_negative.cpp @@ -19,24 +19,24 @@ const std::vector netPrecisions = { /* ============= 2D Convolution ============= */ const std::vector> kernels2D = { - {1, 3}, - {7, 1}, - {3, 3}, + {1, 3}, + {7, 1}, + {3, 3}, }; const std::vector> kernels2DInvalid = { - {1, 4}, - {2, 3}, - {3, 2}, - {8, 1}, - {4, 4}, + {1, 4}, + {2, 3}, + {3, 2}, + {8, 1}, + {4, 4}, }; const std::vector> strides2D = { - {1, 1}, + {1, 1}, }; const std::vector> strides2DInvalid = { - {4, 4}, {1, 4} + {4, 4}, {1, 4} }; const std::vector> padBegins2D = { {0, 0}, }; @@ -56,65 +56,65 @@ const std::vector numOutChannels2DInvalid = { 1, 7, 9, 400 }; const std::vector> input2DNCHWFine = { { 1, 8, 20, 16 } }; const std::vector> input2DNCHWInvalidInputC = { - { 1, 7, 20, 16 }, - { 1, 9, 20, 16 }, - { 1, 400, 20, 16 } }; + { 1, 7, 20, 16 }, + { 1, 9, 20, 16 }, + { 1, 400, 20, 16 } }; const std::vector> input2DNCHWInvalidInputH = { { 1, 8, 15, 16 }, { 1, 8, 400, 16 } }; const std::vector> input2DNCHWInvalidInputW = { { 1, 8, 20, 14 }, { 1, 8, 20, 400 } }; const auto conv2DParametersFine = ::testing::Combine( - ::testing::ValuesIn(kernels2D), - ::testing::ValuesIn(strides2D), - ::testing::ValuesIn(padBegins2D), - ::testing::ValuesIn(padEnds2D), - ::testing::ValuesIn(dilations2D), - ::testing::ValuesIn(numOutChannels2D), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2D), + ::testing::ValuesIn(strides2D), + ::testing::ValuesIn(padBegins2D), + ::testing::ValuesIn(padEnds2D), + ::testing::ValuesIn(dilations2D), + ::testing::ValuesIn(numOutChannels2D), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const auto conv2DParametersInvalidKernel = ::testing::Combine( - ::testing::ValuesIn(kernels2DInvalid), - ::testing::ValuesIn(strides2D), - ::testing::ValuesIn(padBegins2D), - ::testing::ValuesIn(padEnds2D), - ::testing::ValuesIn(dilations2D), - ::testing::ValuesIn(numOutChannels2D), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2DInvalid), + ::testing::ValuesIn(strides2D), + ::testing::ValuesIn(padBegins2D), + ::testing::ValuesIn(padEnds2D), + ::testing::ValuesIn(dilations2D), + ::testing::ValuesIn(numOutChannels2D), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const auto conv2DParametersInvalidFilterNumber = ::testing::Combine( - ::testing::ValuesIn(kernels2D), - ::testing::ValuesIn(strides2D), - ::testing::ValuesIn(padBegins2D), - ::testing::ValuesIn(padEnds2D), - ::testing::ValuesIn(dilations2D), - ::testing::ValuesIn(numOutChannels2DInvalid), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2D), + ::testing::ValuesIn(strides2D), + ::testing::ValuesIn(padBegins2D), + ::testing::ValuesIn(padEnds2D), + ::testing::ValuesIn(dilations2D), + ::testing::ValuesIn(numOutChannels2DInvalid), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const auto conv2DParametersInvalidPadding = ::testing::Combine( - ::testing::ValuesIn(kernels2D), - ::testing::ValuesIn(strides2D), - ::testing::ValuesIn(padBegins2DInvalid), - ::testing::ValuesIn(padEnds2DInvalid), - ::testing::ValuesIn(dilations2D), - ::testing::ValuesIn(numOutChannels2D), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2D), + ::testing::ValuesIn(strides2D), + ::testing::ValuesIn(padBegins2DInvalid), + ::testing::ValuesIn(padEnds2DInvalid), + ::testing::ValuesIn(dilations2D), + ::testing::ValuesIn(numOutChannels2D), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const auto conv2DParametersInvalidStride = ::testing::Combine( - ::testing::ValuesIn(kernels2D), - ::testing::ValuesIn(strides2DInvalid), - ::testing::ValuesIn(padBegins2D), - ::testing::ValuesIn(padEnds2D), - ::testing::ValuesIn(dilations2D), - ::testing::ValuesIn(numOutChannels2D), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2D), + ::testing::ValuesIn(strides2DInvalid), + ::testing::ValuesIn(padBegins2D), + ::testing::ValuesIn(padEnds2D), + ::testing::ValuesIn(dilations2D), + ::testing::ValuesIn(numOutChannels2D), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); const auto conv2DParametersInvalidDilation = ::testing::Combine( - ::testing::ValuesIn(kernels2D), - ::testing::ValuesIn(strides2D), - ::testing::ValuesIn(padBegins2D), - ::testing::ValuesIn(padEnds2D), - ::testing::ValuesIn(dilations2DInvalid), - ::testing::ValuesIn(numOutChannels2D), - ::testing::Values(ngraph::op::PadType::EXPLICIT) + ::testing::ValuesIn(kernels2D), + ::testing::ValuesIn(strides2D), + ::testing::ValuesIn(padBegins2D), + ::testing::ValuesIn(padEnds2D), + ::testing::ValuesIn(dilations2DInvalid), + ::testing::ValuesIn(numOutChannels2D), + ::testing::Values(ngraph::op::PadType::EXPLICIT) ); class GnaConv2DNegativeTest : public ConvolutionLayerTest, protected GnaLayerTestCheck { @@ -133,7 +133,7 @@ protected: const auto expected = expectedSubstring(); ASSERT_STR_CONTAINS(errorMsg, expected); EXPECT_TRUE(errorMsg.find(expected) != std::string::npos) << "Wrong error message, actula error message: " << errorMsg << - ", expected: " << expected; + ", expected: " << expected; } } } @@ -172,4 +172,4 @@ GNA_NEG_INSTANTIATE(Padding, InvalidPadding, Fine, "Convolution's input padding GNA_NEG_INSTANTIATE(Stride, InvalidStride, Fine, "Unsupported convolution stride shape") GNA_NEG_INSTANTIATE(Dilation, InvalidDilation, Fine, "dilation is not supported on GNA") -} // namespace +} // namespace \ No newline at end of file diff --git a/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/eltwise.cpp b/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/eltwise.cpp index 6c13b86e434..d57ae5f505c 100644 --- a/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/eltwise.cpp +++ b/inference-engine/tests/functional/plugin/gna/shared_tests_instances/single_layer_tests/eltwise.cpp @@ -9,14 +9,14 @@ using namespace LayerTestsDefinitions; namespace { -std::vector>> inShapes = { - {{2}}, - {{8}}, - {{1, 200}}, - {{1, 1, 1, 3}}, - {{1, 2, 4}}, - {{1, 4, 4}}, - {{1, 4, 4, 1}} +std::vector, std::vector>>> inShapes = { + {{}, {{{2}}}}, + {{}, {{{8}}}}, + {{}, {{{1, 200}}}}, + {{}, {{{1, 1, 1, 3}}}}, + {{}, {{{1, 2, 4}}}}, + {{}, {{{1, 4, 4}}}}, + {{}, {{{1, 4, 4, 1}}}} }; diff --git a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/behavior/infer_request/set_blob_by_type.cpp b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/behavior/infer_request/set_blob_by_type.cpp index 9a7f8a094cb..36a3eff11a2 100644 --- a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/behavior/infer_request/set_blob_by_type.cpp +++ b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/behavior/infer_request/set_blob_by_type.cpp @@ -17,15 +17,14 @@ const std::vector BlobTypes = { FuncTestUtils::BlobType::NV12 }; -const std::map cpuConfig{}; //nothing special -const std::map autoConfig{}; +const std::map gpuConfig{}; //nothing special const std::map multiConfig{{ MULTI_CONFIG_KEY(DEVICE_PRIORITIES) , CommonTestUtils::DEVICE_GPU}}; const std::map heteroConfig{{ "TARGET_FALLBACK", CommonTestUtils::DEVICE_GPU }}; INSTANTIATE_TEST_SUITE_P(smoke_Behavior, InferRequestSetBlobByType, ::testing::Combine(::testing::ValuesIn(BlobTypes), ::testing::Values(CommonTestUtils::DEVICE_GPU), - ::testing::Values(cpuConfig)), + ::testing::Values(gpuConfig)), InferRequestSetBlobByType::getTestCaseName); @@ -37,8 +36,8 @@ INSTANTIATE_TEST_SUITE_P(smoke_Behavior_Multi, InferRequestSetBlobByType, INSTANTIATE_TEST_SUITE_P(smoke_Behavior_Auto, InferRequestSetBlobByType, ::testing::Combine(::testing::ValuesIn(BlobTypes), - ::testing::Values(CommonTestUtils::DEVICE_AUTO + std::string(":") + CommonTestUtils::DEVICE_CPU), - ::testing::Values(autoConfig)), + ::testing::Values(CommonTestUtils::DEVICE_AUTO), + ::testing::Values(multiConfig)), InferRequestSetBlobByType::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Behavior_Hetero, InferRequestSetBlobByType, diff --git a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/convolution.cpp b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/convolution.cpp index 94e77a1a4a7..68a8625556e 100644 --- a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/convolution.cpp +++ b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/convolution.cpp @@ -17,15 +17,15 @@ const std::vector netPrecisions = { /* ============= 2D Convolution ============= */ const std::vector> kernels = {{3, 3}, - {3, 5}}; + {3, 5}}; const std::vector> strides = {{1, 1}, - {1, 3}}; + {1, 3}}; const std::vector> padBegins = {{0, 0}, {0, 3}}; const std::vector> padEnds = {{0, 0}, {0, 3}}; const std::vector> dilations = {{1, 1}, - {3, 1}}; + {3, 1}}; const std::vector numOutChannels = {1, 5}; const std::vector padTypes = { ngraph::op::PadType::EXPLICIT, @@ -51,37 +51,37 @@ const auto conv2DParams_AutoPadValid = ::testing::Combine( ); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_ExplicitPadding, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_ExplicitPadding, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_GPU)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_ExplicitPadding, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_GPU)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_AutoPadValid, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_AutoPadValid, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_GPU)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_AutoPadValid, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_GPU)), + ConvolutionLayerTest::getTestCaseName); /* ============= 3D Convolution ============= */ const std::vector> kernels3d = {{3, 3, 3}, - {3, 5, 3}}; + {3, 5, 3}}; const std::vector> paddings3d = {{0, 0, 0}, {0, 2, 0}}; const std::vector> strides3d = {{1, 1, 1}, - {1, 2, 1}}; + {1, 2, 1}}; const std::vector> dilations3d = { {1, 1, 1} }; @@ -98,14 +98,14 @@ const auto conv3DParams = ::testing::Combine( ); INSTANTIATE_TEST_SUITE_P(smoke_Convolution3D_Basic1, ConvolutionLayerTest, - ::testing::Combine( - conv3DParams, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 10, 10, 10})), - ::testing::Values(CommonTestUtils::DEVICE_GPU)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv3DParams, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 10, 10, 10})), + ::testing::Values(CommonTestUtils::DEVICE_GPU)), + ConvolutionLayerTest::getTestCaseName); } // namespace diff --git a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/eltwise.cpp b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/eltwise.cpp index fc411847cb9..586293131f3 100644 --- a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/eltwise.cpp +++ b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/eltwise.cpp @@ -9,20 +9,20 @@ using namespace LayerTestsDefinitions; namespace { -std::vector>> inShapes = { - {{2}}, - {{2, 200}}, - {{10, 200}}, - {{1, 10, 100}}, - {{4, 4, 16}}, - {{1, 1, 1, 3}}, - {{2, 17, 5, 4}, {1, 17, 1, 1}}, - {{2, 17, 5, 1}, {1, 17, 1, 4}}, - {{1, 2, 4}}, - {{1, 4, 4}}, - {{1, 4, 4, 1}}, - {{1, 4, 3, 2, 1, 3}}, - {{1, 3, 1, 1, 1, 3}, {1, 3, 1, 1, 1, 1}}, +std::vector, std::vector>>> inShapes = { + {{}, {{{2}}}}, + {{}, {{{2, 200}}}}, + {{}, {{{10, 200}}}}, + {{}, {{{1, 10, 100}}}}, + {{}, {{{4, 4, 16}}}}, + {{}, {{{1, 1, 1, 3}}}}, + {{}, {{{2, 17, 5, 4}, {1, 17, 1, 1}}}}, + {{}, {{{2, 17, 5, 1}, {1, 17, 1, 4}}}}, + {{}, {{{1, 2, 4}}}}, + {{}, {{{1, 4, 4}}}}, + {{}, {{{1, 4, 4, 1}}}}, + {{}, {{{1, 4, 3, 2, 1, 3}}}}, + {{}, {{{1, 3, 1, 1, 1, 3}, {1, 3, 1, 1, 1, 1}}}}, }; std::vector netPrecisions = { diff --git a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/softmax.cpp b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/softmax.cpp index ad797508c6f..4e6cd11f15f 100644 --- a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/softmax.cpp +++ b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/single_layer_tests/softmax.cpp @@ -19,10 +19,10 @@ const std::vector inputLayouts2D = { InferenceEngine::Layout::NC, }; -const std::vector inputShapes2D = { - InferenceEngine::SizeVector {1, 100}, - InferenceEngine::SizeVector {100, 1}, - InferenceEngine::SizeVector {10, 10}, +const std::vector>> inputShapes2D = { + {{}, {{1, 100}}}, + {{}, {{100, 1}}}, + {{}, {{10, 10}}}, }; const std::vector axis2D = { @@ -48,10 +48,10 @@ INSTANTIATE_TEST_SUITE_P( SoftMaxLayerTest::getTestCaseName ); -const std::vector inputShapes4D = { - InferenceEngine::SizeVector {1, 100, 1, 1}, - InferenceEngine::SizeVector {1, 3, 4, 3}, - InferenceEngine::SizeVector {2, 3, 4, 5}, +const std::vector>> inputShapes4D = { + {{}, {{1, 100, 1, 1}}}, + {{}, {{1, 3, 4, 3}}}, + {{}, {{2, 3, 4, 5}}}, }; const std::vector axis4D = {0, 1, 2, 3}; diff --git a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp index 76b2f51c332..4cfe065b610 100644 --- a/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp +++ b/inference-engine/tests/functional/plugin/gpu/shared_tests_instances/skip_tests_config.cpp @@ -68,11 +68,9 @@ std::vector disabledTestPatterns() { R"(.*Behavior.*InferRequestIOBBlobSetLayoutTest.*layout=(95|OIHW).*)", R"(.*Behavior.*InferRequestIOBBlobSetLayoutTest.*CanSetInBlobWithDifferentLayouts.*layout=NHWC.*)", R"(.*Behavior.*InferRequestIOBBlobSetLayoutTest.*CanSetOutBlobWithDifferentLayouts.*layout=(CN|HW).*)", - R"(.*Behavior_Multi.*InferRequestSetBlobByType.*Batched.*)", + R"(.*Behavior.*(Multi|Auto).*InferRequestSetBlobByType.*Batched.*)", R"(.*(Multi|Auto).*Behavior.*InferRequestIOBBlobTest.*canProcessDeallocatedOutputBlobAfterGetAndSetBlob.*)", // TODO: until issue is xxx-59670 is resolved - R"(.*Gather8LayerTest.*)", - // TODO: Issue 66516 - R"(.*smoke_PrePostProcess_GPU.*convert_element_type_and_mean.*)" + R"(.*Gather8LayerTest.*)" }; -} +} \ No newline at end of file diff --git a/inference-engine/tests/functional/plugin/gpu/single_layer_tests/tensor_iterator.cpp b/inference-engine/tests/functional/plugin/gpu/single_layer_tests/tensor_iterator.cpp index f35942099c9..27f9ffc5c19 100644 --- a/inference-engine/tests/functional/plugin/gpu/single_layer_tests/tensor_iterator.cpp +++ b/inference-engine/tests/functional/plugin/gpu/single_layer_tests/tensor_iterator.cpp @@ -256,6 +256,7 @@ protected: break; } } + functionRefs = ngraph::clone_function(*function); } }; diff --git a/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/convolution.cpp b/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/convolution.cpp index 43a582b89fe..7483c0bed04 100644 --- a/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/convolution.cpp +++ b/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/convolution.cpp @@ -18,15 +18,15 @@ const std::vector netPrecisions = { /* ============= 2D Convolution ============= */ // Layer specific const std::vector> kernels = {{3, 3}, - {3, 5}}; + {3, 5}}; const std::vector> strides = {{1, 1}, - {1, 3}}; + {1, 3}}; const std::vector> padBegins = {{0, 0}, {0, 3}}; const std::vector> padEnds = {{0, 0}, {0, 3}}; const std::vector> dilations = {{1, 1}, - {3, 1}}; + {3, 1}}; const std::vector numOutCannels = {1, 5}; const std::vector padTypes = { ngraph::op::PadType::EXPLICIT, @@ -61,39 +61,39 @@ const auto conv2DParams_BigDimensionValid = ::testing::Combine( ); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_ExplicitPadding, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_ExplicitPadding, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_MYRIAD)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_ExplicitPadding, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_MYRIAD)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_AutoPadValid, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_AutoPadValid, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 30, 30})), - ::testing::Values(CommonTestUtils::DEVICE_MYRIAD)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_AutoPadValid, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 30, 30})), + ::testing::Values(CommonTestUtils::DEVICE_MYRIAD)), + ConvolutionLayerTest::getTestCaseName); INSTANTIATE_TEST_SUITE_P(smoke_Convolution2D_BigDimensionValid, ConvolutionLayerTest, - ::testing::Combine( - conv2DParams_BigDimensionValid, - ::testing::ValuesIn(netPrecisions), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(InferenceEngine::Layout::ANY), - ::testing::Values(std::vector({1, 3, 1, 2500})), - ::testing::Values(CommonTestUtils::DEVICE_MYRIAD)), - ConvolutionLayerTest::getTestCaseName); + ::testing::Combine( + conv2DParams_BigDimensionValid, + ::testing::ValuesIn(netPrecisions), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Precision::UNSPECIFIED), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(InferenceEngine::Layout::ANY), + ::testing::Values(std::vector({1, 3, 1, 2500})), + ::testing::Values(CommonTestUtils::DEVICE_MYRIAD)), + ConvolutionLayerTest::getTestCaseName); /* ============= 3D Convolution ============= */ // TODO: 3D convolution fails with sigabort diff --git a/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/eltwise.cpp b/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/eltwise.cpp index 6821c49494a..1e77b6ab0e7 100644 --- a/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/eltwise.cpp +++ b/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/single_layer_tests/eltwise.cpp @@ -15,14 +15,14 @@ namespace { typedef std::map Config; -std::vector>> inShapes = { - {{2}}, - {{1, 1, 1, 3}}, - {{1, 2, 4}}, - {{1, 4, 4}}, - {{1, 4, 4, 1}}, - {{16, 16, 96}, {96}}, - {{52, 1, 52, 3, 2}, {2}} +std::vector, std::vector>>> inShapes = { + {{}, {{{2}}}}, + {{}, {{{1, 1, 1, 3}}}}, + {{}, {{{1, 2, 4}}}}, + {{}, {{{1, 4, 4}}}}, + {{}, {{{1, 4, 4, 1}}}}, + {{}, {{{16, 16, 96}, {96}}}}, + {{}, {{{52, 1, 52, 3, 2}, {2}}}} }; std::vector fpTypes = { @@ -84,5 +84,4 @@ INSTANTIATE_TEST_SUITE_P(smoke_EltwiseMathInt, ::testing::Values(CommonTestUtils::DEVICE_MYRIAD), ::testing::Values(Config{{InferenceEngine::MYRIAD_DETECT_NETWORK_BATCH, CONFIG_VALUE(NO)}})), EltwiseLayerTest::getTestCaseName); - } // namespace diff --git a/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/skip_tests_config.cpp b/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/skip_tests_config.cpp index c75651220bb..94737f42982 100644 --- a/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/skip_tests_config.cpp +++ b/inference-engine/tests/functional/plugin/myriad/shared_tests_instances/skip_tests_config.cpp @@ -39,7 +39,7 @@ std::vector disabledTestPatterns() { // TODO: Issue 54163 R"(.*ActivationLayerTest.*SoftPlus.*)", // TODO: Issue 54722 - R"(.*IS=\(16\.16\.96\)\(96\)_eltwiseOpType=FloorMod_secondaryInputType=PARAMETER_opType=VECTOR_netPRC=FP32.*)", + R"(.*TS=\(\(16\.16\.96\)_\(96\)_\).*eltwiseOpType=FloorMod_secondaryInputType=PARAMETER_opType=VECTOR_netPRC=FP32.*)", // TODO: Issue 57108 R"(.*QueryNetworkHETEROWithMULTINoThrow_V10.*)", R"(.*QueryNetworkMULTIWithHETERONoThrow_V10.*)", diff --git a/inference-engine/tests/functional/plugin/shared/include/behavior/preprocessing/preprocessing.hpp b/inference-engine/tests/functional/plugin/shared/include/behavior/preprocessing/preprocessing.hpp index 557a36803b3..dd9f3ae623e 100644 --- a/inference-engine/tests/functional/plugin/shared/include/behavior/preprocessing/preprocessing.hpp +++ b/inference-engine/tests/functional/plugin/shared/include/behavior/preprocessing/preprocessing.hpp @@ -107,13 +107,14 @@ public: function = make_ngraph(false); reference_function = make_ngraph(true); //use extra ops to mimic the preprocessing + functionRefs = ngraph::clone_function(*function); } void Validate() override { // w/a: copy of original function is required to provide correct op coverage report (overflow of convert counter issue) auto copyOriginalFunction = function; //force the reference implementation to use graph with extra Convert operation - function = reference_function; + functionRefs = ngraph::clone_function(*reference_function); LayerTestsUtils::LayerTestsCommon::Validate(); function = copyOriginalFunction; } diff --git a/inference-engine/tests/functional/plugin/shared/include/single_layer_tests/loop.hpp b/inference-engine/tests/functional/plugin/shared/include/single_layer_tests/loop.hpp index 6bf5319fe74..d7892636858 100644 --- a/inference-engine/tests/functional/plugin/shared/include/single_layer_tests/loop.hpp +++ b/inference-engine/tests/functional/plugin/shared/include/single_layer_tests/loop.hpp @@ -69,6 +69,7 @@ TEST_P(TrivialLoopTest, PassThroughBody) { function = std::make_shared( ngraph::OutputVector {loop}, ngraph::ParameterVector {start}); + functionRefs = ngraph::clone_function(*function); // Precalculated ref blobs auto blob = make_blob_with_precision({iePrc, ieShape, InferenceEngine::TensorDesc::getLayoutByDims(ieShape)}); @@ -113,6 +114,7 @@ TEST_P(TrivialLoopTest, UnusedInputBody) { function = std::make_shared( ngraph::OutputVector {loop}, ngraph::ParameterVector {start}); + functionRefs = ngraph::clone_function(*function); // Precalculated ref blobs auto blob = make_blob_with_precision({iePrc, ieShape, InferenceEngine::TensorDesc::getLayoutByDims(ieShape)}); diff --git a/inference-engine/tests/functional/plugin/shared/src/behavior/caching/caching_tests.cpp b/inference-engine/tests/functional/plugin/shared/src/behavior/caching/caching_tests.cpp index 8b3e37ee501..5efc5ed0d63 100644 --- a/inference-engine/tests/functional/plugin/shared/src/behavior/caching/caching_tests.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/behavior/caching/caching_tests.cpp @@ -141,6 +141,7 @@ void LoadNetworkCacheTestBase::SetUp() { } catch (...) { GTEST_SKIP(); } + functionRefs = ngraph::clone_function(*function); std::stringstream ss; auto hash = std::hash()(GetTestName()); diff --git a/inference-engine/tests/functional/plugin/shared/src/behavior/detect_network_batch_test.cpp b/inference-engine/tests/functional/plugin/shared/src/behavior/detect_network_batch_test.cpp index 36f83894fdc..8160c8c5480 100644 --- a/inference-engine/tests/functional/plugin/shared/src/behavior/detect_network_batch_test.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/behavior/detect_network_batch_test.cpp @@ -61,18 +61,21 @@ void DetectNetworkBatch::LoadNetwork() { TEST_P(DetectNetworkBatch, InferWithOneInput) { SKIP_IF_CURRENT_TEST_IS_DISABLED() function = ngraph::builder::subgraph::makeSplitConvConcat(); + functionRefs = ngraph::clone_function(*function); Run(); }; TEST_P(DetectNetworkBatch, InferWithMultipleInputs_DiffDims) { SKIP_IF_CURRENT_TEST_IS_DISABLED() function = makeNNWithMultipleInputsDiffDims(); + functionRefs = ngraph::clone_function(*function); Run(); }; TEST_P(DetectNetworkBatch, InferWithMultipleInputs_SameDims) { SKIP_IF_CURRENT_TEST_IS_DISABLED() function = makeNNWithMultipleInputsSameDims(); + functionRefs = ngraph::clone_function(*function); Run(); }; diff --git a/inference-engine/tests/functional/plugin/shared/src/behavior/infer_request/dynamic_batch.cpp b/inference-engine/tests/functional/plugin/shared/src/behavior/infer_request/dynamic_batch.cpp index b4eafc7fe29..7c3ecae7f44 100644 --- a/inference-engine/tests/functional/plugin/shared/src/behavior/infer_request/dynamic_batch.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/behavior/infer_request/dynamic_batch.cpp @@ -47,6 +47,7 @@ namespace ConfigurationTestsDefinitions { max_batch_size = *std::max_element(batch_sizes.begin(), batch_sizes.end()); function = ngraph::builder::subgraph::makeSingleConv(); + functionRefs = ngraph::clone_function(*function); } void DynamicBatchTest::LoadNetwork() { @@ -71,6 +72,7 @@ namespace ConfigurationTestsDefinitions { inputs.push_back(blob); } reference_inputs.push_back(inputs); + functionRefs = ngraph::clone_function(*function); reference_outputs.push_back(CalculateRefs()); } diff --git a/inference-engine/tests/functional/plugin/shared/src/behavior/invalid_cases/proposal.cpp b/inference-engine/tests/functional/plugin/shared/src/behavior/invalid_cases/proposal.cpp index 67b6d340122..9270c1b31e3 100644 --- a/inference-engine/tests/functional/plugin/shared/src/behavior/invalid_cases/proposal.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/behavior/invalid_cases/proposal.cpp @@ -91,6 +91,7 @@ void ProposalBehTest::SetUp() { ngraph::ResultVector results{std::make_shared(proposal)}; function = std::make_shared(results, params, "proposal"); + functionRefs = ngraph::clone_function(*function); } void ProposalBehTest::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/behavior/set_blob.cpp b/inference-engine/tests/functional/plugin/shared/src/behavior/set_blob.cpp index d958870ca1a..0295fca73e7 100644 --- a/inference-engine/tests/functional/plugin/shared/src/behavior/set_blob.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/behavior/set_blob.cpp @@ -106,6 +106,7 @@ void SetBlobTest::SetUp() { auto cumSum = std::dynamic_pointer_cast(ngraph::builder::makeCumSum(paramOuts[0], axisNode, false, false)); ngraph::ResultVector results{std::make_shared(cumSum)}; function = std::make_shared(results, params, "InferSetBlob"); + functionRefs = ngraph::clone_function(*function); } TEST_P(SetBlobTest, CompareWithRefs) { diff --git a/inference-engine/tests/functional/plugin/shared/src/behavior/stress_tests.cpp b/inference-engine/tests/functional/plugin/shared/src/behavior/stress_tests.cpp index df964b76887..93feebfdecc 100644 --- a/inference-engine/tests/functional/plugin/shared/src/behavior/stress_tests.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/behavior/stress_tests.cpp @@ -21,6 +21,7 @@ std::string MultipleAllocations::getTestCaseName(const testing::TestParamInfoGetParam(); function = ngraph::builder::subgraph::makeSplitConvConcat(); + functionRefs = ngraph::clone_function(*function); } TEST_P(MultipleAllocations, InferWorksCorrectAfterAllocations) { diff --git a/inference-engine/tests/functional/plugin/shared/src/hetero/query_network.cpp b/inference-engine/tests/functional/plugin/shared/src/hetero/query_network.cpp index a914f3a6648..a8fddbf4ae2 100644 --- a/inference-engine/tests/functional/plugin/shared/src/hetero/query_network.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/hetero/query_network.cpp @@ -14,6 +14,7 @@ void QueryNetworkTest::SetUp() { auto& param = GetParam(); targetDevice = std::get(param); function = std::get(param); + functionRefs = ngraph::clone_function(*function); cnnNetwork = InferenceEngine::CNNNetwork{function}; } diff --git a/inference-engine/tests/functional/plugin/shared/src/hetero/synthetic.cpp b/inference-engine/tests/functional/plugin/shared/src/hetero/synthetic.cpp index 28a3e20c17a..d6f187a5c94 100644 --- a/inference-engine/tests/functional/plugin/shared/src/hetero/synthetic.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/hetero/synthetic.cpp @@ -107,6 +107,7 @@ void HeteroSyntheticTest::SetUp() { --num; } function = std::get(param)._function; + functionRefs = ngraph::clone_function(*function); } void HeteroSyntheticTest::TearDown() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/add_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/add_transformation.cpp index 3474298c797..0eef7273e53 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/add_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/add_transformation.cpp @@ -63,6 +63,7 @@ void AddTransformation::SetUp() { param.fakeQuantize1, param.fakeQuantize2); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(AddTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/clamp_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/clamp_transformation.cpp index 1da0972305b..56c9c64c69d 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/clamp_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/clamp_transformation.cpp @@ -41,6 +41,7 @@ void ClampTransformation::SetUp() { param.fakeQuantize, param.clampLowConst, param.clampHighConst); + functionRefs = ngraph::clone_function(*function); } TEST_P(ClampTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_transformation.cpp index be9817d929d..8c9eec3344d 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_transformation.cpp @@ -52,6 +52,7 @@ void ConcatTransformation::SetUp() { inputShape, testValues.fqOnData1, testValues.fqOnData2); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConcatTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_child_and_output.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_child_and_output.cpp index 11f65f23804..c597bf41324 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_child_and_output.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_child_and_output.cpp @@ -54,6 +54,7 @@ void ConcatWithChildAndOutputTransformation::SetUp() { function = ngraph::builder::subgraph::ConcatFunction::getOriginalWithChildAndOutput( netPrecision, inputShapes, param.fqOnData1, param.fqOnData2); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConcatWithChildAndOutputTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_different_precision_on_children.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_different_precision_on_children.cpp index 22935540a05..864d52724c6 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_different_precision_on_children.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_different_precision_on_children.cpp @@ -56,6 +56,7 @@ void ConcatWithDifferentChildrenTransformation::SetUp() { function = ngraph::builder::subgraph::ConcatFunction::getOriginalWithDifferentPrecisionOnChildren( netPrecision, inputShapes, param.axis, param.fqOnData1, param.fqOnData2); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConcatWithDifferentChildrenTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_intermediate_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_intermediate_transformation.cpp index 4c1e6dde2b8..138e715f35c 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_intermediate_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_intermediate_transformation.cpp @@ -72,6 +72,7 @@ void ConcatWithIntermediateTransformation::SetUp() { transparentIntermediate, { 256ul, ngraph::Shape({}), {0.f}, {2.55f}, {0.f}, {2.55f} }, { 256ul, ngraph::Shape({}), {0.f}, {2.55f}, {0.f}, {2.55f / 2.f} }); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConcatWithIntermediateTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_neighbors_graph_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_neighbors_graph_transformation.cpp index 95ca88a5104..65460cc4ae6 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_neighbors_graph_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_neighbors_graph_transformation.cpp @@ -55,6 +55,7 @@ void ConcatWithNeighborsGraphTransformation::SetUp() { { 256ul, ngraph::Shape({}), {0.f}, {2.55f}, {0.f}, {2.55f / 3.f} }, "concat", ""); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConcatWithNeighborsGraphTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_split_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_split_transformation.cpp index d0f4cc2520a..a432e499907 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_split_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/concat_with_split_transformation.cpp @@ -65,6 +65,7 @@ void ConcatWithSplitTransformation::SetUp() { param.fqOnData1, param.fqOnData2, true); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConcatWithSplitTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_backprop_data_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_backprop_data_transformation.cpp index 6f634d5fed0..0f5d9001ded 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_backprop_data_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_backprop_data_transformation.cpp @@ -65,6 +65,7 @@ void ConvolutionBackpropDataTransformation::SetUp() { outputShape, param.fakeQuantizeOnData, weights); + functionRefs = ngraph::clone_function(*function); } void ConvolutionBackpropDataTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_qdq_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_qdq_transformation.cpp index d874f5f5284..68dde1b2ec8 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_qdq_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_qdq_transformation.cpp @@ -53,6 +53,7 @@ void ConvolutionQDqTransformation::SetUp() { param.convertOnWeights, param.dequantizationOnWeights, {}); + functionRefs = ngraph::clone_function(*function); } void ConvolutionQDqTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_transformation.cpp index 89b900011a5..51ae123400f 100755 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_transformation.cpp @@ -50,6 +50,7 @@ void ConvolutionTransformation::SetUp() { // TODO: pass from test parameters param.fakeQuantizeOnData, param.fakeQuantizeOnWeights); + functionRefs = ngraph::clone_function(*function); } void ConvolutionTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_with_incorrect_weights.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_with_incorrect_weights.cpp index 4ffaf537c9e..27c62eca410 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_with_incorrect_weights.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/convolution_with_incorrect_weights.cpp @@ -51,6 +51,7 @@ void ConvolutionWIthIncorrectWeightsTransformation::SetUp() { param.fakeQuantizeOnWeights, param.fakeQuantizeOnData, param.isCorrect); + functionRefs = ngraph::clone_function(*function); } TEST_P(ConvolutionWIthIncorrectWeightsTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/depth_to_space_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/depth_to_space_transformation.cpp index 1a7d912bc34..35aab2d120f 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/depth_to_space_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/depth_to_space_transformation.cpp @@ -64,6 +64,7 @@ void DepthToSpaceTransformation::SetUp() { } function = ngraph::builder::subgraph::DepthToSpaceFunction::getOriginal(precision, inputShape, mode, blockSize); + functionRefs = ngraph::clone_function(*function); } TEST_P(DepthToSpaceTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_avg_pool_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_avg_pool_transformation.cpp index 95fb7331950..52860df903a 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_avg_pool_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_avg_pool_transformation.cpp @@ -41,6 +41,7 @@ void FakeQuantizeAndAvgPoolTransformation::SetUp() { fakeQuantize); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(FakeQuantizeAndAvgPoolTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_max_pool_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_max_pool_transformation.cpp index dfb5f503e72..84eed78dc4f 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_max_pool_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_max_pool_transformation.cpp @@ -40,6 +40,7 @@ void FakeQuantizeAndMaxPoolTransformation::SetUp() { fakeQuantize); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(FakeQuantizeAndMaxPoolTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_two_output_branches_with_convolution.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_two_output_branches_with_convolution.cpp index 6f1c8912bf4..f6fd1c4e9d2 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_two_output_branches_with_convolution.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_and_two_output_branches_with_convolution.cpp @@ -49,6 +49,7 @@ void FakeQuantizeAndTwoOutputBranchesWithConvolutionTransformation::SetUp() { testValues.fqOnData, testValues.fqOnWeights1, testValues.fqOnWeights2); + functionRefs = ngraph::clone_function(*function); } TEST_P(FakeQuantizeAndTwoOutputBranchesWithConvolutionTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_precision_selection_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_precision_selection_transformation.cpp index 03e75b24ec6..acb248d9d3a 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_precision_selection_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_precision_selection_transformation.cpp @@ -45,6 +45,7 @@ void FakeQuantizePrecisionSelectionTransformation::SetUp() { }); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(FakeQuantizePrecisionSelectionTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_transformation.cpp index 083f1e64bee..2bce5915756 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_transformation.cpp @@ -45,6 +45,7 @@ void FakeQuantizeTransformation::SetUp() { true); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } void FakeQuantizeTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_with_dq_not_optimal_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_with_dq_not_optimal_transformation.cpp index f4531374303..57d2d0b23ec 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_with_dq_not_optimal_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fake_quantize_with_dq_not_optimal_transformation.cpp @@ -46,6 +46,7 @@ void FakeQuantizeWithNotOptimalTransformation::SetUp() { testValues.convertOnWeights, testValues.dequantizationOnWeights, testValues.dequantizationAfter); + functionRefs = ngraph::clone_function(*function); } void FakeQuantizeWithNotOptimalTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fully_connected_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fully_connected_transformation.cpp index 97407a41930..8140c11a5ff 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fully_connected_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fully_connected_transformation.cpp @@ -50,6 +50,7 @@ void FullyConnectedTransformation::SetUp() { shapes.inputB, shapes.transposeA, shapes.transposeB); + functionRefs = ngraph::clone_function(*function); } TEST_P(FullyConnectedTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_convert_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_convert_transformation.cpp index ed156c079c0..8388c383b15 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_convert_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_convert_transformation.cpp @@ -48,6 +48,7 @@ void FuseConvertTransformation::SetUp() { precision, deqOperations, constInput); + functionRefs = ngraph::clone_function(*function); } TEST_P(FuseConvertTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_and_scale_shift_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_and_scale_shift_transformation.cpp index 6a3b2587f01..77b68b926c8 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_and_scale_shift_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_and_scale_shift_transformation.cpp @@ -40,6 +40,7 @@ void FuseFakeQuantizeAndScaleShiftTransformation::SetUp() { fakeQuantizeOnData); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(FuseFakeQuantizeAndScaleShiftTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_transformation.cpp index 10d2f102d62..aab1412a3bd 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_fake_quantize_transformation.cpp @@ -47,6 +47,7 @@ void FuseFakeQuantizeTransformation::SetUp() { testValues.actual.fakeQuantizeOnData); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(FuseFakeQuantizeTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_multiply_to_fake_quantize_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_multiply_to_fake_quantize_transformation.cpp index a22f80c7d80..f327c35c4a6 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_multiply_to_fake_quantize_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_multiply_to_fake_quantize_transformation.cpp @@ -36,6 +36,7 @@ void FuseMultiplyToFakeQuantizeTransformation::SetUp() { testValues.actual.dequantization); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(FuseMultiplyToFakeQuantizeTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_subtract_to_fake_quantize_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_subtract_to_fake_quantize_transformation.cpp index 93781f654b6..0d71558864b 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_subtract_to_fake_quantize_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/fuse_subtract_to_fake_quantize_transformation.cpp @@ -36,6 +36,7 @@ void FuseSubtractToFakeQuantizeTransformation::SetUp() { testValues.actual.dequantization); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(FuseSubtractToFakeQuantizeTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/gemm_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/gemm_transformation.cpp index 17d8a646069..ba00b952c13 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/gemm_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/gemm_transformation.cpp @@ -45,6 +45,7 @@ void GemmTransformation::SetUp() { inputShape, low, high); + functionRefs = ngraph::clone_function(*function); } TEST_P(GemmTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/group_convolution_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/group_convolution_transformation.cpp index 28aee25c464..be1146caaf0 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/group_convolution_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/group_convolution_transformation.cpp @@ -59,6 +59,7 @@ void GroupConvolutionTransformation::SetUp() { param.fakeQuantizeOnData, param.fakeQuantizeOnWeights, addPrecisionPreserved); + functionRefs = ngraph::clone_function(*function); } void GroupConvolutionTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/groupconvolution_qdq_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/groupconvolution_qdq_transformation.cpp index 32c3783ef75..02d69711c2b 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/groupconvolution_qdq_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/groupconvolution_qdq_transformation.cpp @@ -53,6 +53,7 @@ void GroupConvolutionQDqTransformation::SetUp() { param.convertOnWeights, param.dequantizationOnWeights, {}, {}, {}, param.reshape, {}, "GroupConvolution", param.multiplyAfter); + functionRefs = ngraph::clone_function(*function); } void GroupConvolutionQDqTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/interpolate_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/interpolate_transformation.cpp index e7762406754..8d5250ee26d 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/interpolate_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/interpolate_transformation.cpp @@ -64,6 +64,7 @@ void InterpolateTransformation::SetUp() { interpAttrs.pads_end = attributes.pads_end; function = ngraph::builder::subgraph::InterpolateFunction::getOriginal(precision, shapes.first, shapes.second, interpAttrs); + functionRefs = ngraph::clone_function(*function); } TEST_P(InterpolateTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_transformation.cpp index a4691987400..4e925bfecae 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_transformation.cpp @@ -72,6 +72,7 @@ void MatMulTransformation::SetUp() { testValues.fqOnData2); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } void MatMulTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_constant_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_constant_transformation.cpp index b4df377a620..4ba80fed037 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_constant_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_constant_transformation.cpp @@ -71,6 +71,7 @@ void MatMulWithConstantTransformation::SetUp() { testValues.deqOnWeights); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } void MatMulWithConstantTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_optimized_constant_fake_quantize_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_optimized_constant_fake_quantize_transformation.cpp index 68732730f91..255e2df5c9f 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_optimized_constant_fake_quantize_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mat_mul_with_optimized_constant_fake_quantize_transformation.cpp @@ -54,6 +54,7 @@ void MatMulWithOptimizedConstantFakeQuantizeTransformation::SetUp() { shapes.second, param.fqOnData, param.fqOnWeights); + functionRefs = ngraph::clone_function(*function); } TEST_P(MatMulWithOptimizedConstantFakeQuantizeTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/move_fake_quantize_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/move_fake_quantize_transformation.cpp index d92181e34c2..6454dd042c0 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/move_fake_quantize_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/move_fake_quantize_transformation.cpp @@ -56,6 +56,7 @@ void MoveFakeQuantizeTransformation::SetUp() { {}, {}, param.axis); + functionRefs = ngraph::clone_function(*function); } void MoveFakeQuantizeTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_to_group_convolution_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_to_group_convolution_transformation.cpp index 65a878ea16c..56ed78e4c14 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_to_group_convolution_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_to_group_convolution_transformation.cpp @@ -49,6 +49,7 @@ void MultiplyToGroupConvolutionTransformation::SetUp() { shape, param.fqOnData, param.constant); + functionRefs = ngraph::clone_function(*function); } void MultiplyToGroupConvolutionTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_transformation.cpp index cf0c42c06e9..ec3c6d2feb5 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_transformation.cpp @@ -67,6 +67,7 @@ void MultiplyTransformation::SetUp() { param.fakeQuantize2); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(MultiplyTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_with_one_parent_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_with_one_parent_transformation.cpp index a5214e02d6a..f645bc48c38 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_with_one_parent_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/multiply_with_one_parent_transformation.cpp @@ -38,6 +38,7 @@ void MultiplyWithOneParentTransformation::SetUp() { std::tie(netPrecision, inputShape, targetDevice, values) = this->GetParam(); function = ngraph::builder::subgraph::MultiplyWithOneParentFunction::getOriginal(netPrecision, inputShape, values.fakeQuantize); + functionRefs = ngraph::clone_function(*function); } TEST_P(MultiplyWithOneParentTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mvn_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mvn_transformation.cpp index fffb70d9c77..5f820991026 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mvn_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/mvn_transformation.cpp @@ -48,6 +48,7 @@ void MVNTransformation::SetUp() { shape, reductionAxes, normalizeVariance); + functionRefs = ngraph::clone_function(*function); } TEST_P(MVNTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/normalize_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/normalize_transformation.cpp index 0e663991bd7..763d58d1c52 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/normalize_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/normalize_transformation.cpp @@ -59,6 +59,7 @@ void NormalizeL2Transformation::SetUp() { axes, fuseMultiply, shift); + functionRefs = ngraph::clone_function(*function); } TEST_P(NormalizeL2Transformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/output_layers_handling_in_transformations.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/output_layers_handling_in_transformations.cpp index 1caa0f5d02d..fa88b43768d 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/output_layers_handling_in_transformations.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/output_layers_handling_in_transformations.cpp @@ -87,6 +87,7 @@ void OutputLayersHandlingInTransformations::SetUp() { }; function = std::make_shared(results, ngraph::ParameterVector { input }, "OutputLayersHandling"); + functionRefs = ngraph::clone_function(*function); } TEST_P(OutputLayersHandlingInTransformations, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pad_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pad_transformation.cpp index 0da5b32d33b..1d2337258d6 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pad_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pad_transformation.cpp @@ -45,6 +45,7 @@ void PadTransformation::SetUp() { param.padsEnd, mode, param.padValue); + functionRefs = ngraph::clone_function(*function); } void PadTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/prelu_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/prelu_transformation.cpp index 5d425a0f7df..9ee11a84986 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/prelu_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/prelu_transformation.cpp @@ -55,6 +55,7 @@ void PReluTransformation::SetUp() { function = ngraph::builder::subgraph::PReluFunction::getOriginal(inputShape, precision, testValues.fakeQuantize); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(PReluTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pull_reshape_through_dequantization_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pull_reshape_through_dequantization_transformation.cpp index 035201eb5e6..cf1fb1c5f47 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pull_reshape_through_dequantization_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/pull_reshape_through_dequantization_transformation.cpp @@ -77,6 +77,7 @@ void PullReshapeThroughDequantizationTransformation::SetUp() { testValues.reshape2, testValues.dequantizationAfter, "GroupConvolution"); + functionRefs = ngraph::clone_function(*function); } void PullReshapeThroughDequantizationTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_max_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_max_transformation.cpp index be7309daa20..988b6269e28 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_max_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_max_transformation.cpp @@ -43,6 +43,7 @@ void ReduceMaxTransformation::SetUp() { param.fakeQuantize, param.constantValues, param.keepDims); + functionRefs = ngraph::clone_function(*function); } void ReduceMaxTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_mean_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_mean_transformation.cpp index 61a74ca4695..5cd5b491649 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_mean_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_mean_transformation.cpp @@ -43,6 +43,7 @@ void ReduceMeanTransformation::SetUp() { param.fakeQuantize, param.constantValues, param.keepDims); + functionRefs = ngraph::clone_function(*function); } void ReduceMeanTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_min_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_min_transformation.cpp index da1f229583d..30858be100d 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_min_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_min_transformation.cpp @@ -43,6 +43,7 @@ void ReduceMinTransformation::SetUp() { param.fakeQuantize, param.constantValues, param.keepDims); + functionRefs = ngraph::clone_function(*function); } void ReduceMinTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_sum_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_sum_transformation.cpp index 1c6e11febe6..dd16d90b765 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_sum_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reduce_sum_transformation.cpp @@ -43,6 +43,7 @@ void ReduceSumTransformation::SetUp() { param.fakeQuantize, param.constantValues, param.keepDims); + functionRefs = ngraph::clone_function(*function); } void ReduceSumTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/relu_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/relu_transformation.cpp index 197bf8ec1fd..e73c784ec4f 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/relu_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/relu_transformation.cpp @@ -55,6 +55,7 @@ void ReluTransformation::SetUp() { function = ngraph::builder::subgraph::ReluFunction::getOriginal(inputShape, precision, testValues.fakeQuantize); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(ReluTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reshape_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reshape_transformation.cpp index dc927ef9427..1a3b7c2a056 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reshape_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/reshape_transformation.cpp @@ -44,6 +44,7 @@ void ReshapeTransformation::SetUp() { param.reshapeConstValues, netPrecision, param.fakeQuantize); + functionRefs = ngraph::clone_function(*function); } void ReshapeTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/shuffle_channels_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/shuffle_channels_transformation.cpp index 4943de4fcb8..68c9d8caf4b 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/shuffle_channels_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/shuffle_channels_transformation.cpp @@ -45,6 +45,7 @@ void ShuffleChannelsTransformation::SetUp() { param.fakeQuantizeOnData, param.axis, param.group); + functionRefs = ngraph::clone_function(*function); } void ShuffleChannelsTransformation::Run() { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/split_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/split_transformation.cpp index 94ac53bab8f..c9cbe0b2856 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/split_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/split_transformation.cpp @@ -58,6 +58,7 @@ void SplitTransformation::SetUp() { param.fakeQuantize, param.splitedAxis, param.numSplit); + functionRefs = ngraph::clone_function(*function); } TEST_P(SplitTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/squeeze_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/squeeze_transformation.cpp index 7976c9be0a6..f212e2c6944 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/squeeze_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/squeeze_transformation.cpp @@ -76,6 +76,7 @@ void SqueezeTransformation::SetUp() { squeezeParam.squeezeAxes); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(SqueezeTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/strided_slice_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/strided_slice_transformation.cpp index 08a5da998e3..6cc579f7331 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/strided_slice_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/strided_slice_transformation.cpp @@ -59,6 +59,7 @@ void StridedSliceTransformation::SetUp() { param.newAxisMask, param.shrinkAxisMask, param.elipsisMask); + functionRefs = ngraph::clone_function(*function); } TEST_P(StridedSliceTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_multiply_to_multiply_add_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_multiply_to_multiply_add_transformation.cpp index 7b6726d9ae2..49e9d33934a 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_multiply_to_multiply_add_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_multiply_to_multiply_add_transformation.cpp @@ -37,6 +37,7 @@ void SubtractMultiplyToMultiplyAddTransformation::SetUp() { testValues.inputShape, testValues.precision, testValues.fqOnData); + functionRefs = ngraph::clone_function(*function); } TEST_P(SubtractMultiplyToMultiplyAddTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_transformation.cpp index 58898d9be44..d3fe9b6ebe4 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/subtract_transformation.cpp @@ -34,6 +34,7 @@ void SubtractTransformation::SetUp() { std::tie(netPrecision, inputShape, targetDevice, params) = this->GetParam(); function = ngraph::builder::subgraph::SubtractFunction::getOriginal(netPrecision, inputShape); + functionRefs = ngraph::clone_function(*function); } TEST_P(SubtractTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_after_matmul_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_after_matmul_transformation.cpp index 037296f321c..6164a7d2765 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_after_matmul_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_after_matmul_transformation.cpp @@ -46,6 +46,7 @@ void TransposeAfterMatMulTransformation::SetUp() { std::tie(precision, inputShape, targetDevice, params, perTensor, transposeChannelDim) = this->GetParam(); function = ngraph::builder::subgraph::TransposeAfterMatMulFunction::getOriginal(precision, inputShape); + functionRefs = ngraph::clone_function(*function); } TEST_P(TransposeAfterMatMulTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_transformation.cpp index 09832342af1..59f09212139 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/transpose_transformation.cpp @@ -40,6 +40,7 @@ void TransposeTransformation::SetUp() { testValues.transposeConstValues, testValues.precisionBeforeFq, testValues.fqOnData); + functionRefs = ngraph::clone_function(*function); } TEST_P(TransposeTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/unsqueeze_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/unsqueeze_transformation.cpp index 31761f5ef3a..38a06f79fae 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/unsqueeze_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/unsqueeze_transformation.cpp @@ -76,6 +76,7 @@ void UnsqueezeTransformation::SetUp() { unsqueezeParam.unsqueezeAxes); ngraph::pass::InitNodeInfo().run_on_function(function); + functionRefs = ngraph::clone_function(*function); } TEST_P(UnsqueezeTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/variadic_split_transformation.cpp b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/variadic_split_transformation.cpp index a5cf92e691c..bd5dbdb030e 100644 --- a/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/variadic_split_transformation.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/low_precision_transformations/variadic_split_transformation.cpp @@ -65,6 +65,7 @@ void VariadicSplitTransformation::SetUp() { param.fakeQuantize, param.splitedAxis, param.splitLengths); + functionRefs = ngraph::clone_function(*function); } TEST_P(VariadicSplitTransformation, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_add.cpp b/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_add.cpp index 662ef3313b5..d5811d7c790 100644 --- a/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_add.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_add.cpp @@ -51,6 +51,7 @@ namespace LayerTestsDefinitions { ngraph::ResultVector{result}, ngraph::ParameterVector{input0, input1}, "CodegenAdd"); + functionRefs = ngraph::clone_function(*function); } TEST_P(CodegenAdd, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_bert.cpp b/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_bert.cpp index d4e328e19b8..4eb97fa784e 100644 --- a/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_bert.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_bert.cpp @@ -67,6 +67,7 @@ namespace LayerTestsDefinitions { // it should be some topological order to pass parameters for reference code to be executed correctly ngraph::ParameterVector{input1, input2, c0, input3}, "CodegenBert"); + functionRefs = ngraph::clone_function(*function); } TEST_P(CodegenBert, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_gelu.cpp b/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_gelu.cpp index bbf7402d4fa..5918cc91c9b 100644 --- a/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_gelu.cpp +++ b/inference-engine/tests/functional/plugin/shared/src/subgraph_tests/codegen_gelu.cpp @@ -65,6 +65,8 @@ namespace LayerTestsDefinitions { ngraph::pass::InitNodeInfo().run_on_function(function); ngraph::pass::ConstantFolding().run_on_function(function); } + + functionRefs = ngraph::clone_function(*function); } TEST_P(CodegenGelu, CompareWithRefImpl) { diff --git a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/base/layer_test_utils.hpp b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/base/layer_test_utils.hpp index 844d8fb2fcd..8bd4371e9db 100644 --- a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/base/layer_test_utils.hpp +++ b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/base/layer_test_utils.hpp @@ -51,7 +51,7 @@ enum RefMode { class LayerTestsCommon : public CommonTestUtils::TestsCommon { public: - virtual InferenceEngine::Blob::Ptr GenerateInput(const InferenceEngine::InputInfo &info) const; + virtual InferenceEngine::Blob::Ptr GenerateInput(const InferenceEngine::InputInfo &inputInfo) const; virtual void Run(); @@ -142,6 +142,7 @@ protected: TargetDevice targetDevice; std::shared_ptr function; + std::shared_ptr functionRefs = nullptr; std::map configuration; // Non default values of layouts/precisions will be set to CNNNetwork InferenceEngine::Layout inLayout = InferenceEngine::Layout::ANY; @@ -154,6 +155,10 @@ protected: float abs_threshold; InferenceEngine::CNNNetwork cnnNetwork; std::shared_ptr core; + std::vector inputDynamicShapes; + // index for targetStaticShape + size_t index = 0; + std::vector> targetStaticShapes; virtual void Validate(); @@ -164,6 +169,7 @@ protected: InferenceEngine::InferRequest inferRequest; private: + void ResizeNgraphFunction(); RefMode refMode = RefMode::INTERPRETER; }; diff --git a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/convolution.hpp b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/convolution.hpp index ce8badb6da7..eef4165a1ad 100644 --- a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/convolution.hpp +++ b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/convolution.hpp @@ -46,4 +46,4 @@ protected: }; // ! [test_convolution:definition] -} // namespace LayerTestsDefinitions +} // namespace LayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/eltwise.hpp b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/eltwise.hpp index 842bcdd0f7e..bf0db28ec72 100644 --- a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/eltwise.hpp +++ b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/eltwise.hpp @@ -16,7 +16,7 @@ namespace LayerTestsDefinitions { typedef std::tuple< - std::vector>, // input shapes + std::pair, std::vector>>, // input shapes ngraph::helpers::EltwiseTypes, // eltwise op type ngraph::helpers::InputLayerType, // secondary input type CommonTestUtils::OpType, // op type diff --git a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/softmax.hpp b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/softmax.hpp index b997e3651f2..d7b92ab3255 100644 --- a/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/softmax.hpp +++ b/inference-engine/tests/functional/shared_test_classes/include/shared_test_classes/single_layer/softmax.hpp @@ -17,15 +17,15 @@ namespace LayerTestsDefinitions { using softMaxLayerTestParams = std::tuple< - InferenceEngine::Precision, // netPrecision - InferenceEngine::Precision, // Input precision - InferenceEngine::Precision, // Output precision - InferenceEngine::Layout, // Input layout - InferenceEngine::Layout, // Output layout - InferenceEngine::SizeVector, // inputShape - size_t, // axis - std::string, // targetDevice - std::map // config + InferenceEngine::Precision, // netPrecision + InferenceEngine::Precision, // Input precision + InferenceEngine::Precision, // Output precision + InferenceEngine::Layout, // Input layout + InferenceEngine::Layout, // Output layout + std::pair>, // Dynamic shape + Target static shapes + size_t, // axis + std::string, // targetDevice + std::map // config >; class SoftMaxLayerTest : public testing::WithParamInterface, @@ -36,5 +36,4 @@ public: protected: void SetUp() override; }; - } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/base/layer_test_utils.cpp b/inference-engine/tests/functional/shared_test_classes/src/base/layer_test_utils.cpp index ba61d9bcfb1..c8c0c117cec 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/base/layer_test_utils.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/base/layer_test_utils.cpp @@ -2,22 +2,21 @@ // SPDX-License-Identifier: Apache-2.0 // -#include #include #ifdef _WIN32 #include #endif -#include -#include -#include -#include -#include -#include #include +#include "pugixml.hpp" + +#include +#include + #include "ngraph/variant.hpp" #include "shared_test_classes/base/layer_test_utils.hpp" +#include "common_test_utils/file_utils.hpp" #include "functional_test_utils/core_config.hpp" namespace LayerTestsUtils { @@ -25,8 +24,22 @@ namespace LayerTestsUtils { LayerTestsCommon::LayerTestsCommon() : threshold(1e-2f), abs_threshold(-1.f) { core = PluginCache::get().ie(targetDevice); } +void LayerTestsCommon::ResizeNgraphFunction() { + auto params = function->get_parameters(); + ASSERT_LE(params.size(), targetStaticShapes[index].size()); + for (size_t i = 0; i < params.size(); i++) { + params[i]->set_partial_shape(targetStaticShapes[index][i]); + } + functionRefs = ngraph::clone_function(*function); + functionRefs->set_friendly_name("FunctionRefs"); +} void LayerTestsCommon::Run() { + //TODO: w/a: to identify gaps with functionRefs and init it + if (functionRefs == nullptr) { + functionRefs = ngraph::clone_function(*function); + functionRefs->set_friendly_name("refFunction"); + } auto crashHandler = [](int errCode) { auto &s = Summary::getInstance(); s.saveReport(); @@ -39,27 +52,38 @@ void LayerTestsCommon::Run() { s.setDeviceName(targetDevice); if (FuncTestUtils::SkipTestsConfig::currentTestIsDisabled()) { - s.updateOPsStats(function, PassRate::Statuses::SKIPPED); + s.updateOPsStats(functionRefs, PassRate::Statuses::SKIPPED); GTEST_SKIP() << "Disabled test due to configuration" << std::endl; } else { - s.updateOPsStats(function, PassRate::Statuses::CRASHED); + s.updateOPsStats(functionRefs, PassRate::Statuses::CRASHED); } try { LoadNetwork(); - GenerateInputs(); - Infer(); - Validate(); - s.updateOPsStats(function, PassRate::Statuses::PASSED); + for (size_t i = 0; i < targetStaticShapes.size(); i++) { + index = i; + try { + if (!inputDynamicShapes.empty()) { + // resize ngraph function according new target shape + ResizeNgraphFunction(); + } + GenerateInputs(); + Infer(); + Validate(); + s.updateOPsStats(functionRefs, PassRate::Statuses::PASSED); + } catch (const std::exception &ex) { + THROW_IE_EXCEPTION << "Incorrect target static shape: " << CommonTestUtils::vec2str(targetStaticShapes[i]) << std::endl << ex.what(); + } + } } catch (const std::runtime_error &re) { - s.updateOPsStats(function, PassRate::Statuses::FAILED); + s.updateOPsStats(functionRefs, PassRate::Statuses::FAILED); GTEST_FATAL_FAILURE_(re.what()); } catch (const std::exception &ex) { - s.updateOPsStats(function, PassRate::Statuses::FAILED); + s.updateOPsStats(functionRefs, PassRate::Statuses::FAILED); GTEST_FATAL_FAILURE_(ex.what()); } catch (...) { - s.updateOPsStats(function, PassRate::Statuses::FAILED); + s.updateOPsStats(functionRefs, PassRate::Statuses::FAILED); GTEST_FATAL_FAILURE_("Unknown failure occurred."); } } @@ -108,7 +132,7 @@ void LayerTestsCommon::QueryNetwork() { ASSERT_EQ(expected, actual); } -InferenceEngine::Blob::Ptr LayerTestsCommon::GenerateInput(const InferenceEngine::InputInfo &info) const { +InferenceEngine::Blob::Ptr LayerTestsCommon::GenerateInput(const InferenceEngine::InputInfo& info) const { return FuncTestUtils::createAndFillBlob(info.getTensorDesc()); } @@ -330,6 +354,22 @@ void LayerTestsCommon::ConfigureNetwork() { out.second->setPrecision(outPrc); } } + + // Reshape CNNNetwork before load to the plugin in dynamic scenario + if (!inputDynamicShapes.empty()) { + auto params = function->get_parameters(); + std::map inputDataMap; + ASSERT_EQ(params.size(), inputDynamicShapes.size()); + for (size_t i = 0; i < inputDynamicShapes.size(); i++) { + ngraph::PartialShape dynamicShape = inputDynamicShapes[i]; + if (dynamicShape.rank() == 0) { + continue; + } + std::string inputName = params[i]->get_friendly_name(); + inputDataMap.insert({inputName, dynamicShape}); + } + cnnNetwork.reshape(inputDataMap); + } } void LayerTestsCommon::LoadNetwork() { @@ -347,9 +387,22 @@ void LayerTestsCommon::GenerateInputs() { const auto& param = functionParams[i]; const auto infoIt = inputsInfo.find(param->get_friendly_name()); GTEST_ASSERT_NE(infoIt, inputsInfo.cend()); - - const auto& info = infoIt->second; - auto blob = GenerateInput(*info); + InferenceEngine::InputInfo::CPtr info = infoIt->second; + InferenceEngine::Blob::Ptr blob = nullptr; + if (!inputDynamicShapes.empty()) { + if (inputDynamicShapes[i].rank() != 0) { + InferenceEngine::DataPtr dataNew( + new InferenceEngine::Data(infoIt->first, info->getTensorDesc().getPrecision(), + targetStaticShapes[index][i], + info->getTensorDesc().getLayout())); + InferenceEngine::InputInfo infoNew; + infoNew.setInputData(dataNew); + blob = GenerateInput(infoNew); + } + } + if (blob == nullptr) { + blob = GenerateInput(*info); + } inputs.push_back(blob); } } @@ -377,11 +430,15 @@ void LayerTestsCommon::Infer() { } std::vector>> LayerTestsCommon::CalculateRefs() { + //TODO: w/a: to identify gaps with functionRefs and init it + if (functionRefs == nullptr) { + functionRefs = ngraph::clone_function(*function); + } // nGraph interpreter does not support f16/bf16 - ngraph::pass::ConvertPrecision().run_on_function(function); - ngraph::pass::ConvertPrecision().run_on_function(function); + ngraph::pass::ConvertPrecision().run_on_function(functionRefs); + ngraph::pass::ConvertPrecision().run_on_function(functionRefs); - function->validate_nodes_and_infer_types(); + functionRefs->validate_nodes_and_infer_types(); auto referenceInputs = std::vector>(inputs.size()); auto refInputsTypes = std::vector(inputs.size()); @@ -413,11 +470,11 @@ std::vector>> LayerTe std::vector>> expectedOutputs; switch (refMode) { case INTERPRETER: { - expectedOutputs = ngraph::helpers::interpreterFunction(function, referenceInputs, refInputsTypes); + expectedOutputs = ngraph::helpers::interpreterFunction(functionRefs, referenceInputs, refInputsTypes); break; } case CONSTANT_FOLDING: { - const auto &foldedFunc = ngraph::helpers::foldFunction(function, referenceInputs, refInputsTypes); + const auto &foldedFunc = ngraph::helpers::foldFunction(functionRefs, referenceInputs, refInputsTypes); expectedOutputs = ngraph::helpers::getConstData(foldedFunc); break; } @@ -460,9 +517,9 @@ void LayerTestsCommon::Validate() { std::string LayerTestsCommon::getRuntimePrecision(const std::string& layerName) { const auto execGraph = executableNetwork.GetExecGraphInfo(); - const auto function = execGraph.getFunction(); + const auto execFunction = execGraph.getFunction(); - for (const auto& op : function->get_ops()) { + for (const auto& op : execFunction->get_ops()) { const auto name = op->get_friendly_name(); if (name == layerName) { const auto& rtInfo = op->get_rt_info(); @@ -480,9 +537,9 @@ std::string LayerTestsCommon::getRuntimePrecision(const std::string& layerName) std::string LayerTestsCommon::getRuntimePrecisionByType(const std::string& layerType) { const auto execGraph = executableNetwork.GetExecGraphInfo(); - const auto function = execGraph.getFunction(); + const auto execFunction = execGraph.getFunction(); - for (const auto& op : function->get_ops()) { + for (const auto& op : execFunction->get_ops()) { const auto& rtInfo = op->get_rt_info(); const auto& typeIt = rtInfo.find("layerType"); @@ -505,9 +562,9 @@ std::string LayerTestsCommon::getRuntimePrecisionByType(const std::string& layer #ifndef NDEBUG void LayerTestsCommon::showRuntimePrecisions() { const auto execGraph = executableNetwork.GetExecGraphInfo(); - const auto function = execGraph.getFunction(); + const auto execFunction = execGraph.getFunction(); - for (const auto& op : function->get_ops()) { + for (const auto& op : execFunction->get_ops()) { const auto& rtInfo = op->get_rt_info(); const auto& typeIt = rtInfo.find("layerType"); diff --git a/inference-engine/tests/functional/shared_test_classes/src/read_ir/read_ir.cpp b/inference-engine/tests/functional/shared_test_classes/src/read_ir/read_ir.cpp index e3ea87f9dc0..1108447a54e 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/read_ir/read_ir.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/read_ir/read_ir.cpp @@ -76,6 +76,7 @@ void ReadIRTest::SetUp() { } } } + functionRefs = ngraph::clone_function(*function); } void ReadIRTest::GenerateInputs() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/activation.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/activation.cpp index 6ac2acea031..b2da6956c16 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/activation.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/activation.cpp @@ -51,6 +51,7 @@ void ActivationLayerTest::SetUp() { auto activation = ngraph::builder::makeActivation(params[0], ngPrc, activationType, shapes.second, constantsValue); function = std::make_shared(ngraph::NodeVector{activation}, params); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr ActivationLayerTest::GenerateInput(const InferenceEngine::InputInfo &info) const { @@ -222,6 +223,7 @@ void ActivationParamLayerTest::SetUp() { auto activation = ngraph::builder::makeActivation(params, ngPrc, activationType); ngraph::ResultVector results{std::make_shared(activation)}; function = std::make_shared(results, params); + functionRefs = ngraph::clone_function(*function); } void ActivationDynamicLayerTest::Run() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/adaptive_pooling.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/adaptive_pooling.cpp index a7248f61f0c..5882c0aa0ce 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/adaptive_pooling.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/adaptive_pooling.cpp @@ -50,5 +50,6 @@ void AdaPoolLayerTest::SetUp() { function = (poolingMode == "max" ? std::make_shared(adapoolMax->outputs(), params, "AdaPoolMax") : std::make_shared(adapoolAvg->outputs(), params, "AdaPoolAvg")); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_norm.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_norm.cpp index c9185270343..7dbd508f787 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_norm.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_norm.cpp @@ -44,6 +44,7 @@ void BatchNormLayerTest::SetUp() { auto batchNorm = ngraph::builder::makeBatchNormInference(paramOuts[0], epsilon); ngraph::ResultVector results{std::make_shared(batchNorm)}; function = std::make_shared(results, params, "BatchNormInference"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_to_space.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_to_space.cpp index 873e8e7deb6..eeb64063818 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_to_space.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/batch_to_space.cpp @@ -41,6 +41,7 @@ void BatchToSpaceLayerTest::SetUp() { auto b2s = ngraph::builder::makeBatchToSpace(paramOuts[0], ngPrc, blockShape, cropsBegin, cropsEnd); ngraph::ResultVector results{std::make_shared(b2s)}; function = std::make_shared(results, params, "BatchToSpace"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/binary_convolution.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/binary_convolution.cpp index 42195b5c6d8..4752cda9230 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/binary_convolution.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/binary_convolution.cpp @@ -74,6 +74,7 @@ void BinaryConvolutionLayerTest::SetUp() { padValue); ngraph::ResultVector results{std::make_shared(binConv)}; function = std::make_shared(results, params, "BinaryConvolution"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/broadcast.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/broadcast.cpp index 2961551648a..d290aaf7405 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/broadcast.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/broadcast.cpp @@ -39,6 +39,7 @@ void BroadcastLayerTest::SetUp() { auto broadcast = ngraph::builder::makeBroadcast(params[0], target_shape_const, mode, axesMapping); ngraph::ResultVector results{std::make_shared(broadcast)}; function = std::make_shared(results, params, "BroadcastInference"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/bucketize.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/bucketize.cpp index 18b88fe52b5..20bfdfbb112 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/bucketize.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/bucketize.cpp @@ -63,5 +63,6 @@ namespace LayerTestsDefinitions { buckets->set_friendly_name("b_buckets"); auto bucketize = std::make_shared(data, buckets, ngNetPrc, with_right_bound); function = std::make_shared(std::make_shared(bucketize), ngraph::ParameterVector{data, buckets}, "Bucketize"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/clamp.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/clamp.cpp index e95406dde34..be190c2b31c 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/clamp.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/clamp.cpp @@ -35,6 +35,7 @@ void ClampLayerTest::SetUp() { auto input = std::make_shared(ngNetPrc, ngraph::Shape(inShape)); auto clamp = std::make_shared(input, interval.first, interval.second); function = std::make_shared(std::make_shared(clamp), ngraph::ParameterVector{input}); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/comparison.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/comparison.cpp index 8092f41f6e5..b328320fe5f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/comparison.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/comparison.cpp @@ -75,5 +75,6 @@ void ComparisonLayerTest::SetUp() { auto comparisonNode = ngraph::builder::makeComparison(inputs[0], secondInput, comparisonOpType); function = std::make_shared(comparisonNode, inputs, "Comparison"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/concat.cpp index 69884c325a5..e4ff48683b0 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/concat.cpp @@ -38,5 +38,6 @@ void ConcatLayerTest::SetUp() { auto concat = std::make_shared(paramOuts, axis); ngraph::ResultVector results{std::make_shared(concat)}; function = std::make_shared(results, params, "concat"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/constant.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/constant.cpp index abd37314759..19588ca09cf 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/constant.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/constant.cpp @@ -41,5 +41,6 @@ void ConstantLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(constant)}; function = std::make_shared(results, ngraph::ParameterVector{}, "constant"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/conversion.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/conversion.cpp index 0c5e7a387a7..b612ad5a189 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/conversion.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/conversion.cpp @@ -41,5 +41,6 @@ void ConversionLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(conversion)}; function = std::make_shared(results, params, "Conversion"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution.cpp index e419e08e0d8..7a868645002 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution.cpp @@ -14,7 +14,7 @@ std::string ConvolutionLayerTest::getTestCaseName(const testing::TestParamInfo padBegin, padEnd; @@ -44,7 +44,7 @@ void ConvolutionLayerTest::SetUp() { std::vector inputShape; auto netPrecision = InferenceEngine::Precision::UNSPECIFIED; std::tie(convParams, netPrecision, inPrc, outPrc, inLayout, outLayout, inputShape, targetDevice) = - this->GetParam(); + this->GetParam(); ngraph::op::PadType padType; InferenceEngine::SizeVector kernel, stride, dilation; std::vector padBegin, padEnd; @@ -66,4 +66,4 @@ void ConvolutionLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(conv)}; function = std::make_shared(results, params, "convolution"); } -} // namespace LayerTestsDefinitions +} // namespace LayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution_backprop_data.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution_backprop_data.cpp index 83d0587fda3..4583525c8f4 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution_backprop_data.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/convolution_backprop_data.cpp @@ -69,5 +69,6 @@ void ConvolutionBackpropDataLayerTest::SetUp() { } ngraph::ResultVector results{std::make_shared(convBackpropData)}; function = std::make_shared(results, params, "convolutionBackpropData"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder.cpp index e9c0d1dd103..804545a9f3f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder.cpp @@ -53,5 +53,6 @@ void CTCGreedyDecoderLayerTest::SetUp() { ngraph::ResultVector results{ std::make_shared(ctcGreedyDecoder) }; function = std::make_shared(results, paramsIn, "CTCGreedyDecoder"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder_seq_len.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder_seq_len.cpp index c207eeb0696..f2cb44abb89 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder_seq_len.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_greedy_decoder_seq_len.cpp @@ -91,5 +91,6 @@ void CTCGreedyDecoderSeqLenLayerTest::SetUp() { results.push_back(std::make_shared(ctcGreedyDecoderSeqLen->output(i))); } function = std::make_shared(results, paramsIn, "CTCGreedyDecoderSeqLen"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_loss.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_loss.cpp index 4939d9326f5..b67749c8465 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_loss.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/ctc_loss.cpp @@ -58,5 +58,6 @@ void CTCLossLayerTest::SetUp() { ngFpPrc, ngIntPrc, preprocessCollapseRepeated, ctcMergeRepeated, unique)); ngraph::ResultVector results{std::make_shared(ctcLoss)}; function = std::make_shared(results, params, "CTCLoss"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/cum_sum.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/cum_sum.cpp index 024fdf43c7b..26c569c70ae 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/cum_sum.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/cum_sum.cpp @@ -37,5 +37,6 @@ void CumSumLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(cumSum)}; function = std::make_shared(results, ngraph::ParameterVector{paramData}, "cumsum"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_convolution.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_convolution.cpp index e787de0226f..0f00a15002d 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_convolution.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_convolution.cpp @@ -100,5 +100,6 @@ void DeformableConvolutionLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(deformable_conv)}; function = std::make_shared(results, parameters, "deformable_convolution"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_psroi_pooling.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_psroi_pooling.cpp index a48d7faca51..3f30ce668ec 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_psroi_pooling.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/deformable_psroi_pooling.cpp @@ -127,5 +127,6 @@ namespace LayerTestsDefinitions { ngraph::ResultVector results{std::make_shared(defomablePSROIPooling)}; function = std::make_shared(results, params, "deformable_psroi_pooling"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/depth_to_space.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/depth_to_space.cpp index 9345ee6d01e..807429c227a 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/depth_to_space.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/depth_to_space.cpp @@ -50,5 +50,6 @@ void DepthToSpaceLayerTest::SetUp() { auto d2s = ngraph::builder::makeDepthToSpace(paramOuts[0], mode, blockSize); ngraph::ResultVector results{std::make_shared(d2s)}; function = std::make_shared(results, params, "DepthToSpace"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/detection_output.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/detection_output.cpp index 02a1655d56c..d0b59e24ca6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/detection_output.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/detection_output.cpp @@ -151,5 +151,6 @@ void DetectionOutputLayerTest::SetUp() { auto detOut = ngraph::builder::makeDetectionOutput(paramOuts, attrs); ngraph::ResultVector results{std::make_shared(detOut)}; function = std::make_shared(results, params, "DetectionOutput"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/dft.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/dft.cpp index 5f31beff78a..4c7a90fc13a 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/dft.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/dft.cpp @@ -43,5 +43,6 @@ void DFTLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(dft)}; function = std::make_shared(results, paramVector, "DFT"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/eltwise.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/eltwise.cpp index 3c4366db2d0..6eff9569d4f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/eltwise.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/eltwise.cpp @@ -9,7 +9,7 @@ namespace LayerTestsDefinitions { std::string EltwiseLayerTest::getTestCaseName(const testing::TestParamInfo& obj) { - std::vector> inputShapes; + std::pair, std::vector>> shapes; InferenceEngine::Precision netPrecision; InferenceEngine::Precision inPrc, outPrc; InferenceEngine::Layout inLayout; @@ -18,11 +18,19 @@ std::string EltwiseLayerTest::getTestCaseName(const testing::TestParamInfo additional_config; - std::tie(inputShapes, eltwiseOpType, secondaryInputType, opType, netPrecision, inPrc, outPrc, inLayout, targetName, additional_config) = + std::tie(shapes, eltwiseOpType, secondaryInputType, opType, netPrecision, inPrc, outPrc, inLayout, targetName, additional_config) = obj.param; std::ostringstream results; - results << "IS=" << CommonTestUtils::vec2str(inputShapes) << "_"; + results << "IS=" << CommonTestUtils::partialShape2str(shapes.first) << "_"; + results << "TS="; + for (const auto& shape : shapes.second) { + results << "("; + for (const auto& item : shape) { + results << CommonTestUtils::vec2str(item) << "_"; + } + results << ")_"; + } results << "eltwiseOpType=" << eltwiseOpType << "_"; results << "secondaryInputType=" << secondaryInputType << "_"; results << "opType=" << opType << "_"; @@ -52,25 +60,20 @@ InferenceEngine::Blob::Ptr EltwiseLayerTest::GenerateInput(const InferenceEngine } void EltwiseLayerTest::SetUp() { - std::vector> inputShapes; + std::pair, std::vector>> shapes; InferenceEngine::Precision netPrecision; ngraph::helpers::InputLayerType secondaryInputType; CommonTestUtils::OpType opType; ngraph::helpers::EltwiseTypes eltwiseType; std::map additional_config; - std::tie(inputShapes, eltwiseType, secondaryInputType, opType, netPrecision, inPrc, outPrc, inLayout, targetDevice, additional_config) = + std::tie(shapes, eltwiseType, secondaryInputType, opType, netPrecision, inPrc, outPrc, inLayout, targetDevice, additional_config) = this->GetParam(); auto ngPrc = FuncTestUtils::PrecisionUtils::convertIE2nGraphPrc(netPrecision); - std::vector inputShape1, inputShape2; - if (inputShapes.size() == 1) { - inputShape1 = inputShape2 = inputShapes.front(); - } else if (inputShapes.size() == 2) { - inputShape1 = inputShapes.front(); - inputShape2 = inputShapes.back(); - } else { - IE_THROW() << "Incorrect number of input shapes"; - } + targetStaticShapes = shapes.second; + inputDynamicShapes = shapes.first; + + ngraph::Shape inputShape1 = targetStaticShapes.front().front(), inputShape2 = targetStaticShapes.front().back(); configuration.insert(additional_config.begin(), additional_config.end()); auto input = ngraph::builder::makeParams(ngPrc, {inputShape1}); @@ -104,8 +107,20 @@ void EltwiseLayerTest::SetUp() { input.push_back(std::dynamic_pointer_cast(secondaryInput)); } } + input[0]->set_friendly_name("param0"); + secondaryInput->set_friendly_name("param1"); auto eltwise = ngraph::builder::makeEltwise(input[0], secondaryInput, eltwiseType); function = std::make_shared(eltwise, input, "Eltwise"); + functionRefs = ngraph::clone_function(*function); + + // w/a: to propagate 1 input shape for other input + for (auto& staticShape : targetStaticShapes) { + if (function->get_parameters().size() > staticShape.size()) { + for (size_t i = 0; i < function->get_parameters().size() - staticShape.size(); i++) { + staticShape.push_back(staticShape.front()); + } + } + } } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_offsets_sum.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_offsets_sum.cpp index 6dd70b9183b..e8f73ed3d5e 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_offsets_sum.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_offsets_sum.cpp @@ -50,5 +50,6 @@ void EmbeddingBagOffsetsSumLayerTest::SetUp() { ngPrc, ngIdxPrc, emb_table_node, indices, offsets, defaultIndex, withWeights, withDefIndex)); ngraph::ResultVector results{std::make_shared(embBag)}; function = std::make_shared(results, params, "embeddingBagOffsetsSum"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_packed_sum.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_packed_sum.cpp index 910f37ce512..b5b17318624 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_packed_sum.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_bag_packed_sum.cpp @@ -47,5 +47,6 @@ void EmbeddingBagPackedSumLayerTest::SetUp() { ngPrc, ngIdxPrc, emb_table_node, indices, withWeights)); ngraph::ResultVector results{std::make_shared(embBag)}; function = std::make_shared(results, params, "embeddingBagPackedSum"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_segments_sum.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_segments_sum.cpp index 3a86daf0e31..ba071ceccbd 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_segments_sum.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/embedding_segments_sum.cpp @@ -52,5 +52,6 @@ void EmbeddingSegmentsSumLayerTest::SetUp() { ngPrc, ngIdxPrc, emb_table_node, indices, segmentIds, numSegments, defaultIndex, withWeights, withDefIndex)); ngraph::ResultVector results{std::make_shared(embBag)}; function = std::make_shared(results, params, "embeddingSegmentsSum"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/extract_image_patches.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/extract_image_patches.cpp index 7dad336eed6..dbe7c8bd646 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/extract_image_patches.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/extract_image_patches.cpp @@ -44,5 +44,6 @@ void ExtractImagePatchesTest::SetUp() { inputNode, ngraph::Shape(kernel), ngraph::Strides(strides), ngraph::Shape(rates), pad_type); ngraph::ResultVector results{std::make_shared(extImgPatches)}; function = std::make_shared(results, params, "ExtractImagePatches"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/fake_quantize.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/fake_quantize.cpp index edb32c6de2b..59182f4799d 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/fake_quantize.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/fake_quantize.cpp @@ -97,6 +97,7 @@ void FakeQuantizeLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(fq)}; function = std::make_shared(results, params, "fakeQuantize"); + functionRefs = ngraph::clone_function(*function); configuration = config.second; } diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather.cpp index 84965158e13..7f6ad09daa2 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather.cpp @@ -22,6 +22,7 @@ void GatherLayerTestBase::SetUp(const gatherParamsTuple& params) { auto gather = std::make_shared(paramOuts[0], indicesNode, axisNode); ngraph::ResultVector results{std::make_shared(gather)}; function = std::make_shared(results, functionParams, "gather"); + functionRefs = ngraph::clone_function(*function); } std::string GatherLayerTest::getTestCaseName(const testing::TestParamInfo &obj) { @@ -91,6 +92,7 @@ void Gather7LayerTest::SetUp() { auto gather = std::make_shared(paramOuts[0], indicesNode, axisNode, batchIdx); ngraph::ResultVector results{ std::make_shared(gather) }; function = std::make_shared(results, functionParams, "gather"); + functionRefs = ngraph::clone_function(*function); } std::string Gather8LayerTest::getTestCaseName(const testing::TestParamInfo& obj) { @@ -134,6 +136,7 @@ void Gather8LayerTest::SetUp() { auto gather = std::make_shared(paramOuts[0], indicesNode, axisNode, batchIdx); ngraph::ResultVector results{ std::make_shared(gather) }; function = std::make_shared(results, functionParams, "gather"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_elements.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_elements.cpp index d559e04a53d..3a87ebbf0a6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_elements.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_elements.cpp @@ -46,6 +46,7 @@ void GatherElementsLayerTest::SetUp() { ngraph::builder::makeGatherElements(paramOuts[0], indicesShape, ngIPrc, axis)); ngraph::ResultVector results{std::make_shared(gather)}; function = std::make_shared(results, params, "gatherEl"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_nd.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_nd.cpp index 7ceca5670ff..630c0c52cf3 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_nd.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_nd.cpp @@ -53,5 +53,6 @@ void GatherNDLayerTest::SetUp() { ngraph::builder::makeGatherND(dataNode, indicesShape, ngIPrc, batchDims)); ngraph::ResultVector results{std::make_shared(gather)}; function = std::make_shared(results, params, "gatherND"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_tree.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_tree.cpp index c9229aa4675..64656ac1cb7 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_tree.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gather_tree.cpp @@ -62,6 +62,7 @@ void GatherTreeLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(operationResult)}; function = std::make_shared(results, paramsIn, "GatherTree"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr GatherTreeLayerTest::GenerateInput(const InferenceEngine::InputInfo &info) const { diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/grn.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/grn.cpp index 07ede562536..f3a7c3c29cc 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/grn.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/grn.cpp @@ -42,5 +42,6 @@ void GrnLayerTest::SetUp() { auto grn = std::make_shared(paramsOut[0], bias); ngraph::ResultVector results{ std::make_shared(grn) }; function = std::make_shared(results, paramsIn, "Grn"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution.cpp index dcf59efd210..5d35a5ee5a5 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution.cpp @@ -58,5 +58,6 @@ void GroupConvolutionLayerTest::SetUp() { padEnd, dilation, padType, convOutChannels, numGroups)); ngraph::ResultVector results{std::make_shared(groupConv)}; function = std::make_shared(results, params, "groupConvolution"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution_backprop_data.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution_backprop_data.cpp index caf94578935..345a3f080c4 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution_backprop_data.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/group_convolution_backprop_data.cpp @@ -60,6 +60,7 @@ void GroupConvBackpropDataLayerTest::SetUp() { padEnd, dilation, padType, convOutChannels, numGroups)); ngraph::ResultVector results{std::make_shared(groupConvBackpropData)}; function = std::make_shared(results, params, "GroupConvolutionBackpropData"); + functionRefs = ngraph::clone_function(*function); } std::string GroupConvBackpropLayerTest::getTestCaseName(testing::TestParamInfo obj) { @@ -124,5 +125,6 @@ void GroupConvBackpropLayerTest::SetUp() { } ngraph::ResultVector results{std::make_shared(groupConvBackpropData)}; function = std::make_shared(results, params, "GroupConvolutionBackpropData"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_cell.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_cell.cpp index 48aeeb53fef..8ea46a8c1bb 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_cell.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_cell.cpp @@ -72,5 +72,6 @@ void GRUCellTest::SetUp() { m.register_pass(); m.run_passes(function); } + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_sequence.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_sequence.cpp index b7c135eb0de..5c5424a3b3f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_sequence.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/gru_sequence.cpp @@ -96,6 +96,7 @@ namespace LayerTestsDefinitions { bool ti_found = is_tensor_iterator_exist(function); EXPECT_EQ(ti_found, false); } + functionRefs = ngraph::clone_function(*function); } void GRUSequenceTest::GenerateInputs() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/interpolate.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/interpolate.cpp index ce01e26d97f..4d017fc1855 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/interpolate.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/interpolate.cpp @@ -93,6 +93,7 @@ void InterpolateLayerTest::SetUp() { interpolateAttributes); const ngraph::ResultVector results{std::make_shared(interpolate)}; function = std::make_shared(results, params, "interpolate"); + functionRefs = ngraph::clone_function(*function); } //Interpolate-1 @@ -157,6 +158,7 @@ void Interpolate1LayerTest::SetUp() { const ngraph::ResultVector results{std::make_shared(interpolate)}; function = std::make_shared(results, params, "interpolate"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/log_softmax.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/log_softmax.cpp index 669ea0ec501..75952dd0845 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/log_softmax.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/log_softmax.cpp @@ -49,5 +49,6 @@ void LogSoftmaxLayerTest::SetUp() { const ngraph::ResultVector results {std::make_shared(logSoftmax)}; function = std::make_shared(results, params, "logSoftmax"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/logical.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/logical.cpp index a6015debc23..49afe2548b5 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/logical.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/logical.cpp @@ -78,5 +78,6 @@ void LogicalLayerTest::SetUp() { } function = std::make_shared(logicalNode, inputs, "Logical"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/loop.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/loop.cpp index d72bec251aa..7066fe81104 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/loop.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/loop.cpp @@ -138,6 +138,7 @@ namespace LayerTestsDefinitions { auto result1 = std::make_shared(out1); auto result2 = std::make_shared(out2); function = std::make_shared(ngraph::ResultVector{result0, result1, result2}, params, "loop"); + functionRefs = ngraph::clone_function(*function); } std::string StaticShapeLoopTest::getTestCaseName(const testing::TestParamInfo &obj) { @@ -261,6 +262,7 @@ namespace LayerTestsDefinitions { manager.register_pass(); manager.run_passes(function); } + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr StaticShapeLoopTest::GenerateInput(const InferenceEngine::InputInfo &info) const { @@ -352,6 +354,7 @@ namespace LayerTestsDefinitions { function = std::make_shared( ngraph::OutputVector {loop}, ngraph::ParameterVector {to_slice}); + functionRefs = ngraph::clone_function(*function); } void TrivialLoopTest::CreateSlicedLoopDynCondition(size_t batch_size, size_t num_iteration, InferenceEngine::Precision iePrc, @@ -392,5 +395,6 @@ namespace LayerTestsDefinitions { function = std::make_shared( ngraph::OutputVector {loop}, ngraph::ParameterVector {to_slice}); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/low_precision.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/low_precision.cpp index d4aee621def..10c06618802 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/low_precision.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/low_precision.cpp @@ -74,6 +74,7 @@ void LowPrecisionTest::SetUp() { function = std::make_shared(ngraph::ResultVector{std::make_shared(add1)}, ngraph::ParameterVector{input}, "LowPrecisionTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace LowPrecisionTestDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/lrn.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/lrn.cpp index 71ac393a729..3dc181a6780 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/lrn.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/lrn.cpp @@ -49,5 +49,6 @@ void LrnLayerTest::SetUp() { auto lrn = std::make_shared(paramIn[0], axes_node, alpha, beta, bias, size); ngraph::ResultVector results {std::make_shared(lrn)}; function = std::make_shared(results, params, "lrn"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_cell.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_cell.cpp index 260290539af..55645e5b951 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_cell.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_cell.cpp @@ -66,5 +66,6 @@ void LSTMCellTest::SetUp() { m.register_pass(); m.run_passes(function); } + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_sequence.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_sequence.cpp index 7bb4289ec73..874d3a5b2d2 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_sequence.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/lstm_sequence.cpp @@ -95,7 +95,8 @@ namespace LayerTestsDefinitions { } else { bool ti_found = is_tensor_iterator_exist(function); EXPECT_EQ(ti_found, false); - } + } + functionRefs = ngraph::clone_function(*function); } void LSTMSequenceTest::GenerateInputs() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/mat_mul.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/mat_mul.cpp index c75c8995205..9cdbd673bd9 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/mat_mul.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/mat_mul.cpp @@ -73,6 +73,7 @@ void MatMulTest::SetUp() { ngraph::builder::makeMatMul(paramOuts[0], secondaryInput, shapeRelatedParams.input1.second, shapeRelatedParams.input2.second)); ngraph::ResultVector results{std::make_shared(MatMul)}; function = std::make_shared(results, params, "MatMul"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/matrix_nms.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/matrix_nms.cpp index de4787cdf22..f3a0573b9f4 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/matrix_nms.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/matrix_nms.cpp @@ -245,6 +245,7 @@ void MatrixNmsLayerTest::SetUp() { auto nms_1_identity = std::make_shared(nms->output(1), opset5::Constant::create(attrs.output_type, Shape{1}, {1})); auto nms_2_identity = std::make_shared(nms->output(2), opset5::Constant::create(attrs.output_type, Shape{1}, {1})); function = std::make_shared(OutputVector{nms_0_identity, nms_1_identity, nms_2_identity}, params, "NMS"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/memory.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/memory.cpp index e9902cf80c0..b7c600c9485 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/memory.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/memory.cpp @@ -51,6 +51,7 @@ namespace LayerTestsDefinitions { auto variable_value = std::make_shared(hostTensor); variable_context->get().set_variable_value(function->get_variable_by_id("v0"), variable_value); eval_context["VariableContext"] = variable_context; + functionRefs = ngraph::clone_function(*function); } diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/minimum_maximum.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/minimum_maximum.cpp index a3eada5c2a6..518555744cb 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/minimum_maximum.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/minimum_maximum.cpp @@ -46,5 +46,6 @@ namespace LayerTestsDefinitions { auto op = ngraph::builder::makeMinMax(input[0], secondaryInput, opType); function = std::make_shared(op, input, "MinMax"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/multiclass_nms.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/multiclass_nms.cpp index dd42206f63f..72a8e926ff3 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/multiclass_nms.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/multiclass_nms.cpp @@ -265,6 +265,7 @@ void MulticlassNmsLayerTest::SetUp() { auto nms_1_identity = std::make_shared(nms->output(1), opset5::Constant::create(outType, Shape {1}, {1})); auto nms_2_identity = std::make_shared(nms->output(2), opset5::Constant::create(outType, Shape {1}, {1})); function = std::make_shared(OutputVector {nms_0_identity, nms_1_identity, nms_2_identity}, params, "MulticlassNMS"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/mvn.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/mvn.cpp index 5c04c6f177e..4f3f5bd75da 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/mvn.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/mvn.cpp @@ -45,6 +45,7 @@ void Mvn1LayerTest::SetUp() { } ngraph::ResultVector results{std::make_shared(mvn)}; function = std::make_shared(results, param, "MVN1"); + functionRefs = ngraph::clone_function(*function); } @@ -87,6 +88,7 @@ void Mvn6LayerTest::SetUp() { auto mvn = ngraph::builder::makeMVN6(paramOuts[0], axesNode, normalizeVariance, eps, epsMode); ngraph::ResultVector results{std::make_shared(mvn)}; function = std::make_shared(results, param, "MVN6"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/non_max_suppression.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/non_max_suppression.cpp index f9b01f4f7db..c1296ddc1d3 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/non_max_suppression.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/non_max_suppression.cpp @@ -376,6 +376,7 @@ void NmsLayerTest::SetUp() { auto nms_2_identity = std::make_shared(nms->output(2), opset5::Constant::create(outType, Shape{1}, {1})); function = std::make_shared(OutputVector{nms_0_identity, nms_1_identity, nms_2_identity}, params, "NMS"); } + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/nonzero.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/nonzero.cpp index 744d850071d..0c915559d4e 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/nonzero.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/nonzero.cpp @@ -35,5 +35,6 @@ void NonZeroLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(nonZeroOp)}; function = std::make_shared(results, ngraph::ParameterVector{paramNode}, "non_zero"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/normalize_l2.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/normalize_l2.cpp index 140175b1532..98ed33c0f3b 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/normalize_l2.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/normalize_l2.cpp @@ -50,6 +50,7 @@ void NormalizeL2LayerTest::SetUp() { auto norm = ngraph::builder::makeNormalizeL2(data_input, axes, eps, epsMode); ngraph::ResultVector results{std::make_shared(norm)}; function = std::make_shared(results, params, "NormalizeL2"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/one_hot.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/one_hot.cpp index a2713d97e3c..93bbdf2ed80 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/one_hot.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/one_hot.cpp @@ -48,5 +48,6 @@ void OneHotLayerTest::SetUp() { auto onehot = ngraph::builder::makeOneHot(paramOuts[0], depth_type, depth_val, set_type, on_val, off_val, axis); ngraph::ResultVector results{std::make_shared(onehot)}; function = std::make_shared(results, params, "OneHot"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/pad.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/pad.cpp index 6f9127b2431..368cdabff34 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/pad.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/pad.cpp @@ -49,5 +49,6 @@ void PadLayerTest::SetUp() { auto pad = ngraph::builder::makePad(paramOuts[0], padsBegin, padsEnd, argPadValue, padMode); ngraph::ResultVector results{std::make_shared(pad)}; function = std::make_shared(results, params, "pad"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/pooling.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/pooling.cpp index 276fc2bfb6f..85437b82d5a 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/pooling.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/pooling.cpp @@ -124,6 +124,7 @@ void PoolingLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(pooling)}; function = std::make_shared(results, params, "pooling"); + functionRefs = ngraph::clone_function(*function); } void GlobalPoolingLayerTest::SetUp() { @@ -158,5 +159,6 @@ void GlobalPoolingLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(pooling)}; function = std::make_shared(results, params, "pooling"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/power.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/power.cpp index 7fc0cc20899..70cdf10e030 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/power.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/power.cpp @@ -40,5 +40,6 @@ namespace LayerTestsDefinitions { auto pow = std::make_shared(paramsIn[0], power_const); function = std::make_shared(pow, paramsIn, "power"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box.cpp index f3b95141ae0..0ed49b09660 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box.cpp @@ -87,5 +87,6 @@ void PriorBoxLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(priorBox)}; function = std::make_shared (results, params, "PriorBoxFunction"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box_clustered.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box_clustered.cpp index c2a599b1133..f52dfec7831 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box_clustered.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/prior_box_clustered.cpp @@ -94,5 +94,6 @@ void PriorBoxClusteredLayerTest::SetUp() { ngraph::ResultVector results{ std::make_shared(priorBoxClustered) }; function = std::make_shared(results, params, "PB_Clustered"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/proposal.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/proposal.cpp index a0e575ffe5c..79c925b7175 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/proposal.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/proposal.cpp @@ -171,6 +171,7 @@ void ProposalLayerTest::SetUp() { std::make_shared(proposal->output(0)), std::make_shared(proposal->output(1))}; function = std::make_shared(results, params, "proposal"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr ProposalLayerTest::GenerateInput(const InferenceEngine::InputInfo &info) const { diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/psroi_pooling.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/psroi_pooling.cpp index d0701be3bd3..c42f9b069b0 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/psroi_pooling.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/psroi_pooling.cpp @@ -120,5 +120,6 @@ void PSROIPoolingLayerTest::SetUp() { mode_); ngraph::ResultVector results{std::make_shared(psroiPooling)}; function = std::make_shared(results, params, "psroi_pooling"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/range.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/range.cpp index a008c09991d..b2320078bc9 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/range.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/range.cpp @@ -57,6 +57,7 @@ void RangeLayerTest::SetUp() { auto range = std::make_shared(params[0], params[1], params[2]); const ngraph::ResultVector results{std::make_shared(range)}; function = std::make_shared(results, params, "Range"); + functionRefs = ngraph::clone_function(*function); } std::string RangeNumpyLayerTest::getTestCaseName(const testing::TestParamInfo& obj) { @@ -112,5 +113,6 @@ void RangeNumpyLayerTest::SetUp() { auto range = std::make_shared(params[0], params[1], params[2], ngNetPrc); const ngraph::ResultVector results{std::make_shared(range)}; function = std::make_shared(results, params, "Range"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reduce_ops.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reduce_ops.cpp index bafb2f60af8..4e7c1f3a19e 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reduce_ops.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reduce_ops.cpp @@ -65,6 +65,7 @@ void ReduceOpsLayerTest::SetUp() { const auto reduce = ngraph::builder::makeReduce(paramOuts[0], reductionAxesNode, keepDims, reductionType); const ngraph::ResultVector results{std::make_shared(reduce)}; function = std::make_shared(results, params, "Reduce"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr ReduceOpsLayerTest::GenerateInput(const InferenceEngine::InputInfo &info) const { ngraph::helpers::ReductionType reductionType = std::get<3>(GetParam()); diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/region_yolo.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/region_yolo.cpp index 9438685889a..86a1731c208 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/region_yolo.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/region_yolo.cpp @@ -46,6 +46,7 @@ void RegionYoloLayerTest::SetUp() { auto param = std::make_shared(ngPrc, inputShape); auto region_yolo = std::make_shared(param, coords, classes, num_regions, do_softmax, mask, start_axis, end_axis); function = std::make_shared(std::make_shared(region_yolo), ngraph::ParameterVector{param}, "RegionYolo"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reorg_yolo.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reorg_yolo.cpp index fbb8287ffa4..016a6a5eb2d 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reorg_yolo.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reorg_yolo.cpp @@ -28,6 +28,7 @@ void ReorgYoloLayerTest::SetUp() { auto param = std::make_shared(ngraph::element::f32, inputShape); auto reorg_yolo = std::make_shared(param, stride); function = std::make_shared(std::make_shared(reorg_yolo), ngraph::ParameterVector{param}, "ReorgYolo"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reshape.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reshape.cpp index 478f2ce0e27..ef37a106286 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reshape.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reshape.cpp @@ -45,6 +45,8 @@ void ReshapeLayerTest::SetUp() { std::make_shared(paramIn[0], constNode, specialZero)); ngraph::ResultVector results{std::make_shared(reshape)}; function = std::make_shared(results, paramsIn, "Reshape"); + functionRefs = ngraph::clone_function(*function); + functionRefs->set_friendly_name("ReshapeRefs"); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/result.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/result.cpp index e349a92ec0e..c52eecaa74c 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/result.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/result.cpp @@ -31,5 +31,6 @@ void ResultLayerTest::SetUp() { auto params = ngraph::builder::makeParams(ngPrc, {inputShape}); const ngraph::ResultVector results{std::make_shared(params[0])}; function = std::make_shared(results, params, "result"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reverse_sequence.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reverse_sequence.cpp index 3bc82a7f4aa..28fa0ccb105 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/reverse_sequence.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/reverse_sequence.cpp @@ -49,6 +49,7 @@ void ReverseSequenceLayerTest::SetUp() { auto reverse = std::make_shared(paramsIn[0], secondaryInput, batchAxisIndx, seqAxisIndx); ngraph::ResultVector results{std::make_shared(reverse)}; function = std::make_shared(results, paramsIn, "ReverseSequence"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_cell.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_cell.cpp index 19e12540882..9c1a5bed619 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_cell.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_cell.cpp @@ -60,5 +60,6 @@ void RNNCellTest::SetUp() { m.register_pass(); m.run_passes(function); } + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_sequence.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_sequence.cpp index a87e79ed9dd..b82fd65e0f7 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_sequence.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/rnn_sequence.cpp @@ -94,6 +94,7 @@ namespace LayerTestsDefinitions { bool ti_found = ngraph::helpers::is_tensor_iterator_exist(function); EXPECT_EQ(ti_found, false); } + functionRefs = ngraph::clone_function(*function); } void RNNSequenceTest::GenerateInputs() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_align.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_align.cpp index be7318f31c5..9aca769ba28 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_align.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_align.cpp @@ -108,5 +108,6 @@ void ROIAlignLayerTest::SetUp() { poolingMode); ngraph::ResultVector results{std::make_shared(roiAlign)}; function = std::make_shared(results, params, "roi_align"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_pooling.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_pooling.cpp index a59a224a52b..7476dc86660 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_pooling.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/roi_pooling.cpp @@ -82,5 +82,6 @@ namespace LayerTestsDefinitions { pool_method); ngraph::ResultVector results{std::make_shared(roi_pooling)}; function = std::make_shared(results, params, "roi_pooling"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/roll.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/roll.cpp index a9a385fd29c..528a5d9e2cf 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/roll.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/roll.cpp @@ -42,5 +42,6 @@ void RollLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(roll)}; function = std::make_shared(results, paramVector, "roll"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_ND_update.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_ND_update.cpp index bff111d7027..9f63804b3fc 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_ND_update.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_ND_update.cpp @@ -70,5 +70,6 @@ void ScatterNDUpdateLayerTest::SetUp() { auto s2d = ngraph::builder::makeScatterNDUpdate(paramVectorOuts[0], idxPrc, indicesShape, indicesValue, paramVectorOuts[1]); ngraph::ResultVector results{std::make_shared(s2d)}; function = std::make_shared(results, paramVector, "ScatterNDUpdate"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_elements_update.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_elements_update.cpp index e5d28fc4cef..5affd95b9c2 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_elements_update.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_elements_update.cpp @@ -58,5 +58,6 @@ void ScatterElementsUpdateLayerTest::SetUp() { auto s2d = ngraph::builder::makeScatterElementsUpdate(paramVectorOuts[0], idxPrc, indicesShape, indicesValue, paramVectorOuts[1], axis); ngraph::ResultVector results{std::make_shared(s2d)}; function = std::make_shared(results, paramVector, "ScatterElementsUpdate"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_update.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_update.cpp index e7a1fa2707a..1b62a89cd26 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_update.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/scatter_update.cpp @@ -80,5 +80,6 @@ void ScatterUpdateLayerTest::SetUp() { auto s2d = ngraph::builder::makeScatterUpdate(paramVectorOuts[0], idxPrc, indicesShape, indicesValue, paramVectorOuts[1], axis); ngraph::ResultVector results{std::make_shared(s2d)}; function = std::make_shared(results, paramVector, "ScatterUpdate"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/select.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/select.cpp index c8438bf0ba1..3ebf42c214f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/select.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/select.cpp @@ -41,5 +41,6 @@ namespace LayerTestsDefinitions { auto select = std::dynamic_pointer_cast(ngraph::builder::makeSelect(paramOuts, broadcast)); ngraph::ResultVector results{std::make_shared(select)}; function = std::make_shared(results, paramNodesVector, "select"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/shape_of.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/shape_of.cpp index cef18b4b1cf..b1cfff2e2c2 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/shape_of.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/shape_of.cpp @@ -28,6 +28,7 @@ namespace LayerTestsDefinitions { auto shapeOf = std::make_shared(paramOuts[0], inType); ngraph::ResultVector results{std::make_shared(shapeOf)}; function = std::make_shared(results, param, "shapeOf"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/shuffle_channels.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/shuffle_channels.cpp index b8bfe7ff4d9..46fd6163c1f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/shuffle_channels.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/shuffle_channels.cpp @@ -46,5 +46,6 @@ void ShuffleChannelsLayerTest::SetUp() { ngraph::builder::makeShuffleChannels(paramOuts[0], axis, group)); ngraph::ResultVector results{std::make_shared(shuffleChannels)}; function = std::make_shared(results, params, "shuffleChannels"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/softmax.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/softmax.cpp index 1f88945baa1..2bc18a2918d 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/softmax.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/softmax.cpp @@ -10,11 +10,11 @@ std::string SoftMaxLayerTest::getTestCaseName(const testing::TestParamInfo> shapes; size_t axis; std::string targetDevice; std::map config; - std::tie(netPrecision, inPrc, outPrc, inLayout, outLayout, inputShape, axis, targetDevice, config) = obj.param; + std::tie(netPrecision, inPrc, outPrc, inLayout, outLayout, shapes, axis, targetDevice, config) = obj.param; std::ostringstream result; result << "netPRC=" << netPrecision.name() << "_"; @@ -22,7 +22,11 @@ std::string SoftMaxLayerTest::getTestCaseName(const testing::TestParamInfoset_friendly_name("softMaxRefs"); } -} // namespace LayerTestsDefinitions +} // namespace LayerTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_batch.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_batch.cpp index c2bbf712a71..cf2dc1506f9 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_batch.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_batch.cpp @@ -42,5 +42,6 @@ void SpaceToBatchLayerTest::SetUp() { auto s2b = ngraph::builder::makeSpaceToBatch(paramOuts[0], ngPrc, blockShape, padsBegin, padsEnd); ngraph::ResultVector results{std::make_shared(s2b)}; function = std::make_shared(results, params, "SpaceToBatch"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_depth.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_depth.cpp index 70d0856d185..e42882dc4a0 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_depth.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/space_to_depth.cpp @@ -50,5 +50,6 @@ void SpaceToDepthLayerTest::SetUp() { auto s2d = ngraph::builder::makeSpaceToDepth(paramOuts[0], mode, blockSize); ngraph::ResultVector results{std::make_shared(s2d)}; function = std::make_shared(results, params, "SpaceToDepth"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/split.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/split.cpp index 446533dd3de..3268323933e 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/split.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/split.cpp @@ -53,5 +53,6 @@ void SplitLayerTest::SetUp() { results.push_back(std::make_shared(split->output(outIndices[i]))); } function = std::make_shared(results, params, "split"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/squeeze_unsqueeze.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/squeeze_unsqueeze.cpp index 0b30db48aec..22011d9cf7b 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/squeeze_unsqueeze.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/squeeze_unsqueeze.cpp @@ -49,5 +49,6 @@ void SqueezeUnsqueezeLayerTest::SetUp() { const ngraph::ResultVector results{std::make_shared(op)}; function = std::make_shared(results, params, "Squeeze"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/strided_slice.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/strided_slice.cpp index 20998f5c330..76dcafc8bc1 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/strided_slice.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/strided_slice.cpp @@ -50,6 +50,7 @@ void StridedSliceLayerTest::SetUp() { ssParams.endMask, ssParams.newAxisMask, ssParams.shrinkAxisMask, ssParams.ellipsisAxisMask); ngraph::ResultVector results{std::make_shared(ss)}; function = std::make_shared(results, params, "StridedSlice"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/tensor_iterator.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/tensor_iterator.cpp index ebbcd2753a8..9977fc810c6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/tensor_iterator.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/tensor_iterator.cpp @@ -220,5 +220,6 @@ namespace LayerTestsDefinitions { m.register_pass(); m.run_passes(function); } + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/tile.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/tile.cpp index 765448b7ed1..028f33c2ea5 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/tile.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/tile.cpp @@ -39,6 +39,7 @@ void TileLayerTest::SetUp() { auto tile = ngraph::builder::makeTile(paramOuts[0], tileParams); ngraph::ResultVector results{std::make_shared(tile)}; function = std::make_shared(results, params, "tile"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/topk.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/topk.cpp index 9f84287cb4d..23ddf8978e4 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/topk.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/topk.cpp @@ -51,5 +51,6 @@ void TopKLayerTest::SetUp() { results.push_back(std::make_shared(topk->output(i))); } function = std::make_shared(results, params, "TopK"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/transpose.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/transpose.cpp index f78868ccfd2..f55eedb28dc 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/transpose.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/transpose.cpp @@ -42,6 +42,7 @@ void TransposeLayerTest::SetUp() { const auto transpose = std::make_shared(paramOuts.at(0), inputOrderOp); const ngraph::ResultVector results{std::make_shared(transpose)}; function = std::make_shared(results, params, "Transpose"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/single_layer/variadic_split.cpp b/inference-engine/tests/functional/shared_test_classes/src/single_layer/variadic_split.cpp index b7b948828a4..8c66cf1bac0 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/single_layer/variadic_split.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/single_layer/variadic_split.cpp @@ -45,6 +45,7 @@ namespace LayerTestsDefinitions { results.push_back(std::make_shared(VariadicSplit->output(i))); } function = std::make_shared(results, params, "VariadicSplit"); + functionRefs = ngraph::clone_function(*function); } } // namespace LayerTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_concats_eltwise.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_concats_eltwise.cpp index d5ad676e7e8..880ff945a2d 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_concats_eltwise.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_concats_eltwise.cpp @@ -52,5 +52,6 @@ void ActivationConcatsEltwise::SetUp() { auto reshape_pattern = std::make_shared(ngraph::element::i64, ngraph::Shape{2}, std::vector({1, inputSize + concatSize})); auto final_reshape = std::make_shared(eltw, reshape_pattern, false); function = std::make_shared(final_reshape, input, "ActivationConcatsEltwise"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_fq.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_fq.cpp index 38beeed7528..2639d6af9ae 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_fq.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/activation_fq.cpp @@ -73,6 +73,7 @@ namespace SubgraphTestsDefinitions { ngraph::ResultVector results{std::make_shared(FQ)}; function = std::make_shared(results, params, "ActivationFakeQuantizeSubgraph"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr ActivationFakeQuantizeSubgraphTest::GenerateInput(const InferenceEngine::InputInfo &info) const { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/basic_lstm.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/basic_lstm.cpp index bb943f71b03..7ecc613ffe7 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/basic_lstm.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/basic_lstm.cpp @@ -43,6 +43,7 @@ void Basic_LSTM_S::SetUp() { outPrc = InferenceEngine::Precision::FP32; function = GetNetwork(size_params.first, size_params.second, netPrecision, &hidden_memory_init, &cell_memory_init); + functionRefs = ngraph::clone_function(*function); if (decompose) { ngraph::pass::Manager manager; diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/broadcast_power.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/broadcast_power.cpp index 153456e83f9..35000e5bcfc 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/broadcast_power.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/broadcast_power.cpp @@ -40,5 +40,6 @@ void BroadcastPowerTest::SetUp() { inputs_shapes[0]); auto reshape_2 = std::make_shared(sum, reshape_pattern_2, false); function = std::make_shared(reshape_2, params, "BroadcastPowerPass"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/cascade_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/cascade_concat.cpp index 6a2fc1d6c40..117609280a1 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/cascade_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/cascade_concat.cpp @@ -55,5 +55,6 @@ void CascadeConcat::SetUp() { results = ngraph::ResultVector{std::make_shared(concat2)}; } function = std::make_shared(results, input, "concat_reshape_reshape_concat_mul"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/clamp_fq.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/clamp_fq.cpp index 340f12f1c2c..12e9826bb92 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/clamp_fq.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/clamp_fq.cpp @@ -75,6 +75,7 @@ namespace SubgraphTestsDefinitions { ngraph::ResultVector results{std::make_shared(sigmoid)}; function = std::make_shared(results, params, "fakeQuantizeSubgraph"); + functionRefs = ngraph::clone_function(*function); configuration = config.second; } diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/concat_conv.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/concat_conv.cpp index d5c26edc48f..ddcca6573bb 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/concat_conv.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/concat_conv.cpp @@ -84,6 +84,7 @@ void ConcatConvTest::SetUp() { auto reshape2 = std::make_shared(conv, reshapePattern2, false); function = std::make_shared(reshape2, params, "ConcatConvTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/connect_split_concat_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/connect_split_concat_concat.cpp index 5e5e87a463e..3f4a4e22088 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/connect_split_concat_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/connect_split_concat_concat.cpp @@ -38,5 +38,6 @@ void SplitConcatConcatTest::SetUp() { std::make_shared(relu) }; function = std::make_shared(resultVector, params, "Multiple_connection_split_concat"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/constant_result.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/constant_result.cpp index c629008442f..9a198bd9f95 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/constant_result.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/constant_result.cpp @@ -61,6 +61,7 @@ void ConstantResultSubgraphTest::createGraph(const ConstantSubgraphType& type, c } } function = std::make_shared(results, params, "ConstResult"); + functionRefs = ngraph::clone_function(*function); } void ConstantResultSubgraphTest::SetUp() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_eltwise_fusion.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_eltwise_fusion.cpp index 9c40075ac5f..f8e714cb3d6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_eltwise_fusion.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_eltwise_fusion.cpp @@ -77,6 +77,7 @@ void ConvEltwiseFusion::SetUp() { } function = std::make_shared(ngraph::OutputVector{eltwise}, ngraph::ParameterVector{param}, "conv_eltwise"); + functionRefs = ngraph::clone_function(*function); } manager.register_pass(); diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_strides_opt.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_strides_opt.cpp index 9ac09308e70..70245cd7a14 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_strides_opt.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/conv_strides_opt.cpp @@ -40,5 +40,6 @@ void ConvStridesOpt::SetUp() { auto conv2 = std::make_shared(conv1, weights2, strides2, pad_begin2, pad_end2, dilations); function = std::make_shared(OutputVector{conv2}, ParameterVector{param}); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/convert_pad_to_group_conv.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/convert_pad_to_group_conv.cpp index cb4433bcef4..f8598c07874 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/convert_pad_to_group_conv.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/convert_pad_to_group_conv.cpp @@ -39,6 +39,7 @@ void ConvertPadToConvTests::SetUp() { ngraph::opset4::Constant::create(ngraph::element::f32, ngraph::Shape{}, {value}), mode); auto relu = std::make_shared(pad); function = std::make_shared(ngraph::OutputVector{relu}, ngraph::ParameterVector{param}, "pad"); + functionRefs = ngraph::clone_function(*function); } } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/convolution_relu_sequence.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/convolution_relu_sequence.cpp index 531c30828a4..1dfa718d8f6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/convolution_relu_sequence.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/convolution_relu_sequence.cpp @@ -88,5 +88,6 @@ void ConvolutionReluSequenceTest::SetUp() { ngraph::ResultVector results{std::make_shared(lastOutputs)}; function = std::make_shared(results, params, "convolution_relu_sequence"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/copy_before_squeeze.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/copy_before_squeeze.cpp index b2845c8bbdc..8c408c5eb34 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/copy_before_squeeze.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/copy_before_squeeze.cpp @@ -44,5 +44,6 @@ namespace SubgraphTestsDefinitions { auto concat = std::make_shared(ngraph::OutputVector{reshape_1, reshape_2}, 1); function = std::make_shared(concat, input, "copy_before_squeeze"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/crop4d.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/crop4d.cpp index bee4c8e0df2..c8fd3d7d272 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/crop4d.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/crop4d.cpp @@ -51,6 +51,7 @@ void Crop4dTest::SetUp() { ssParams.endMask, ssParams.newAxisMask, ssParams.shrinkAxisMask, ssParams.ellipsisAxisMask); ngraph::ResultVector results{std::make_shared(ss)}; function = std::make_shared(results, params, "crop4d"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/delayed_copy_layer.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/delayed_copy_layer.cpp index 87ddf060bba..c587ae9f302 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/delayed_copy_layer.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/delayed_copy_layer.cpp @@ -40,6 +40,7 @@ namespace SubgraphTestsDefinitions { relu2->add_control_dependency(mem_w); function = std::make_shared(relu2, input, "delayed_copy_layer_memory"); + functionRefs = ngraph::clone_function(*function); } void DelayedCopyTest::switchToNgraphFriendlyModel() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_conv_eltwise.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_conv_eltwise.cpp index 4d5fd16a1f3..ec43dc19d67 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_conv_eltwise.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_conv_eltwise.cpp @@ -166,6 +166,7 @@ void EltwiseBeforeConvTest::SetUp() { auto reshape2 = std::make_shared(conv, reshapePattern2, false); function = std::make_shared(reshape2, params, "EltwiseBeforeConvTest"); + functionRefs = ngraph::clone_function(*function); } std::string EltwiseWithTwoConvsAsInputsTest::getTestCaseName(const testing::TestParamInfo& obj) { @@ -251,6 +252,7 @@ void EltwiseWithTwoConvsAsInputsTest::SetUp() { auto add = std::make_shared(reshape2, reshape4); function = std::make_shared(add, params, "EltwiseWithTwoConvsAsInputsTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_reshape_activation.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_reshape_activation.cpp index fa949c68065..866ac1e1e0c 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_reshape_activation.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/eltwise_reshape_activation.cpp @@ -47,5 +47,6 @@ void EltwiseReshapeActivation::SetUp() { auto reshape2 = std::make_shared(relu, reshape_pattern2, false); function = std::make_shared(reshape2, input, "EltwiseReshapeActivation"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/fc_conv_fc.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/fc_conv_fc.cpp index a1a5e9e0834..d805be7bc8b 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/fc_conv_fc.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/fc_conv_fc.cpp @@ -255,5 +255,6 @@ void FcBetweenConvsTest::SetUp() { auto reshape4 = std::make_shared(conv2, reshapePattern4, false); function = std::make_shared(reshape4, params, "FcBetweenConvsTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/first_connect_input_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/first_connect_input_concat.cpp index 9a92a5936db..3fbe24fa83e 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/first_connect_input_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/first_connect_input_concat.cpp @@ -36,5 +36,6 @@ void ConcatFirstInputTest::SetUp() { ngraph::ResultVector results{std::make_shared(relu)}; function = std::make_shared(results, params, "ConcatMultiInput"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/fq_conv_fq_affine.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/fq_conv_fq_affine.cpp index 1bccd42658f..5f5d9ec82a3 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/fq_conv_fq_affine.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/fq_conv_fq_affine.cpp @@ -127,6 +127,7 @@ void FqConvFqAffineTest::SetUp() { auto matmul = std::make_shared(reshape2, matMulWeightsFQ, false, true); function = std::make_shared(matmul, params, "fqConvfqAffine"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr FqConvFqAffineTest::GenerateInput(const InferenceEngine::InputInfo &info) const { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/get_output_before_activation.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/get_output_before_activation.cpp index c7491c1ee28..bd244e7ce7c 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/get_output_before_activation.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/get_output_before_activation.cpp @@ -72,6 +72,7 @@ void OutputBeforeActivation::SetUp() { auto act = ngraph::builder::makeActivation(midLayer, ngPrc, ngraph::helpers::ActivationTypes::Tanh); outputs.insert(outputs.end(), {midLayer, act}); function = std::make_shared(outputs, input_parameter, "output_before_activation"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr OutputBeforeActivation::GenerateInput(const InferenceEngine::InputInfo &info) const { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/handling_orientation_conv.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/handling_orientation_conv.cpp index 63aef4ceabd..fc3d9469acf 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/handling_orientation_conv.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/handling_orientation_conv.cpp @@ -53,5 +53,6 @@ namespace SubgraphTestsDefinitions { ngraph::ResultVector results{ std::make_shared(reshape3), std::make_shared(reshape4)}; function = std::make_shared(results, params, "RemovePermutationPass"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_conv.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_conv.cpp index dcc55310470..49e2c1d4eab 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_conv.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_conv.cpp @@ -95,5 +95,6 @@ void InputConvTest::SetUp() { ngraph::ResultVector results{ std::make_shared(conv0) }; function = std::make_shared(results, params, "InputConvTest"); } + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_split_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_split_concat.cpp index e7119843cea..2289a7f926f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_split_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/input_split_concat.cpp @@ -43,5 +43,6 @@ void InputSplitConcatTest::SetUp() { ngraph::ResultVector results{ std::make_shared(relu1), std::make_shared(relu2) }; function = std::make_shared(results, params, "InputSplitConcatTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/matmul_squeeze_add.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/matmul_squeeze_add.cpp index 72bef4b588b..decd98c6774 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/matmul_squeeze_add.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/matmul_squeeze_add.cpp @@ -55,5 +55,6 @@ void MatmulSqueezeAddTest::SetUp() { ngraph::ResultVector results {std::make_shared(squeeze_0)}; function = std::make_shared(results, params, "MatmulSqueezeAddTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_LSTMCell.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_LSTMCell.cpp index 2baa728a189..5a26d7efab8 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_LSTMCell.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_LSTMCell.cpp @@ -130,6 +130,7 @@ namespace SubgraphTestsDefinitions { SinkVector{cell_memory_write, hidden_memory_write}, input_parameter, "TI_with_memory"); + functionRefs = ngraph::clone_function(*function); tensor_iterator->validate_and_infer_types(); } @@ -178,6 +179,7 @@ namespace SubgraphTestsDefinitions { auto final_reshape = std::make_shared(unsqueeze, final_reshape_pattern, false); function = std::make_shared(final_reshape, input_parameter, "TI_unrolled_without_memory"); + functionRefs = ngraph::clone_function(*function); } void MemoryLSTMCellTest::CreatePureTensorIteratorModel() { @@ -252,6 +254,7 @@ namespace SubgraphTestsDefinitions { auto final_reshape = std::make_shared(out_unsqueeze, final_reshape_pattern, false); function = std::make_shared(final_reshape, input_parameter, "PureTI"); + functionRefs = ngraph::clone_function(*function); } void MemoryLSTMCellTest::Run() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_eltwise_reshape_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_eltwise_reshape_concat.cpp index 3c4d39558ac..04f7dce48bd 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_eltwise_reshape_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_eltwise_reshape_concat.cpp @@ -82,6 +82,7 @@ void MemoryEltwiseReshapeConcatTest::initTestModel() { auto final_reshape = std::make_shared(concat, final_reshape_pattern, false); function = std::make_shared(final_reshape, input_parameter, "memory_multiply_reshape_concat"); + functionRefs = ngraph::clone_function(*function); } void MemoryEltwiseReshapeConcatTest::initNgraphFriendlyModel() { @@ -110,6 +111,7 @@ void MemoryEltwiseReshapeConcatTest::initNgraphFriendlyModel() { auto concat = ngraph::builder::makeConcat({concat_constant, squeeze}, 0); function = std::make_shared(concat, input_parameter, "memory_multiply_reshape_concat"); + functionRefs = ngraph::clone_function(*function); } void MemoryEltwiseReshapeConcatTest::Run() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_fq_concat_prelu.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_fq_concat_prelu.cpp index 230b0cb4bf1..e19ede8b612 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_fq_concat_prelu.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/memory_fq_concat_prelu.cpp @@ -119,6 +119,7 @@ void MemoryFqConcatPrelu::SetUp() { assign->add_control_dependency(read); result->add_control_dependency(assign); function = std::make_shared(ngraph::ResultVector{result}, input, "memory_fq_concat_prelu"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/mul_conv_fusion.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/mul_conv_fusion.cpp index 50a21b2ece0..fe9b7f56d11 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/mul_conv_fusion.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/mul_conv_fusion.cpp @@ -54,6 +54,7 @@ void MulConvFusion::SetUp() { } function = std::make_shared(ngraph::OutputVector{conv}, ngraph::ParameterVector{param}); + functionRefs = ngraph::clone_function(*function); auto cloned_function = ngraph::clone_function(*function); ngraph::pass::Manager manager; diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multioutput_eltwise_squeeze_eltwise.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multioutput_eltwise_squeeze_eltwise.cpp index 7e0503eb22d..884bc2a7272 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multioutput_eltwise_squeeze_eltwise.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multioutput_eltwise_squeeze_eltwise.cpp @@ -41,5 +41,6 @@ namespace SubgraphTestsDefinitions { ngraph::ResultVector results{std::make_shared(eltwise2), std::make_shared(eltwise3)}; function = std::make_shared(results, input, "eltwise_reshape_eltwise_multioutput"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_LSTMCell.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_LSTMCell.cpp index a3a131eb5b2..da0a27a112d 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_LSTMCell.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_LSTMCell.cpp @@ -193,6 +193,7 @@ void MultipleLSTMCellTest::SetUp() { SinkVector{cell_memory_write, hidden_memory_write, cell_memory_2_write, hidden_memory_2_write}, input_parameter, "TI_with_memory"); + functionRefs = ngraph::clone_function(*function); } void MultipleLSTMCellTest::switchToNgraphFriendlyModel() { @@ -266,6 +267,7 @@ void MultipleLSTMCellTest::switchToNgraphFriendlyModel() { // Body 2 - end function = std::make_shared(final_reshape, input_parameter, "TI_unrolled_without_memory"); + functionRefs = ngraph::clone_function(*function); } void MultipleLSTMCellTest::CreatePureTensorIteratorModel() { @@ -391,6 +393,7 @@ void MultipleLSTMCellTest::CreatePureTensorIteratorModel() { auto final_reshape = std::make_shared(out_unsqueeze_2, final_reshape_pattern, false); function = std::make_shared(final_reshape, input_parameter, "PureTI"); + functionRefs = ngraph::clone_function(*function); } void MultipleLSTMCellTest::InitMemory() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_concat.cpp index 60a16462320..e94faa7f7c2 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_concat.cpp @@ -49,5 +49,6 @@ void MultipleConcatTest::SetUp() { auto act = ngraph::builder::makeActivation(concat_2, ngPrc, ngraph::helpers::ActivationTypes::Relu); function = std::make_shared(act, input_parameter, "multiple_concat"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_connect_split_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_connect_split_concat.cpp index fc5cb4441db..d3f2c9b1eaf 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_connect_split_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_connect_split_concat.cpp @@ -38,5 +38,6 @@ void MultipleConnectSplitConcatTest::SetUp() { std::make_shared(relu_2) }; function = std::make_shared(resultVector, params, "Multiple_connection_split_concat"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_input_fq.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_input_fq.cpp index f2ac77989bf..0be1c18ce59 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_input_fq.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiple_input_fq.cpp @@ -37,6 +37,7 @@ void MultipleInputTest::SetUp() { auto mul4 = ngraph::builder::makeEltwise(fake3, mul3, ngraph::helpers::EltwiseTypes::ADD); auto result = std::make_shared(mul4); function = std::make_shared(ngraph::ResultVector{result}, input, "multiple_input"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiply_add.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiply_add.cpp index 65a0dc6f9d7..8e702aebf00 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiply_add.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/multiply_add.cpp @@ -36,5 +36,6 @@ void MultiplyAddLayerTest::SetUp() { auto add = std::make_shared(mul, const_add); ngraph::ResultVector results{std::make_shared(add)}; function = std::make_shared(results, params, "multiplyAdd"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/mvn_multiply_add.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/mvn_multiply_add.cpp index 2ab87dee11e..8d4ec3cbdea 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/mvn_multiply_add.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/mvn_multiply_add.cpp @@ -55,5 +55,6 @@ void MVNMultiplyAdd::SetUp() { ngraph::ResultVector results{std::make_shared(add)}; function = std::make_shared(results, param, "MVNMultiplyAdd"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/negative_memory_layer_offset.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/negative_memory_layer_offset.cpp index 9375b7b6baf..98eb1f3db1b 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/negative_memory_layer_offset.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/negative_memory_layer_offset.cpp @@ -50,6 +50,7 @@ namespace SubgraphTestsDefinitions { sigm->add_control_dependency(mem_w); function = std::make_shared(sigm, input, "negative_memory_layer_offset_memory"); + functionRefs = ngraph::clone_function(*function); } void NegativeMemoryOffsetTest::switchToNgraphFriendlyModel() { @@ -66,6 +67,8 @@ namespace SubgraphTestsDefinitions { auto sigm = std::make_shared(split->output(1)); function = std::make_shared(sigm, input, "negative_memory_layer_offset_nonmemory"); + functionRefs = ngraph::clone_function(*function); + functionRefs->set_friendly_name("negative_memory_layer_offset_nonmemory_refs"); } void NegativeMemoryOffsetTest::Run() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_result.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_result.cpp index 3dce1b769a9..f0c3c09f966 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_result.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_result.cpp @@ -22,6 +22,7 @@ void ParameterResultSubgraphTest::SetUp() { const ngraph::ResultVector results{std::make_shared(parameter)}; ngraph::ParameterVector params = {parameter}; function = std::make_shared(results, params, "ParameterResult"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_shapeof_result.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_shapeof_result.cpp index 010437d3df4..81be1e59f3c 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_shapeof_result.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/parameter_shapeof_result.cpp @@ -29,6 +29,7 @@ void ParameterShapeOfResultSubgraphTest::SetUp() { const ngraph::ResultVector results{std::make_shared(shapeOf)}; ngraph::ParameterVector params = {parameter}; function = std::make_shared(results, params, "ParameterShapeOfResult"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/perm_conv_perm_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/perm_conv_perm_concat.cpp index aefa636964a..4ba4ac22851 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/perm_conv_perm_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/perm_conv_perm_concat.cpp @@ -78,6 +78,7 @@ void PermConvPermConcat::SetUp() { auto reshape_out = std::make_shared(concat, reshape_out_pattern, false); function = std::make_shared(reshape_out, input_parameter, "perm_conv_perm_concat"); + functionRefs = ngraph::clone_function(*function); } void PermConvPermConcat::Run() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/preprocess.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/preprocess.cpp index 78e37cee17a..649c28fbc0f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/preprocess.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/preprocess.cpp @@ -30,6 +30,7 @@ void PrePostProcessTest::SetUp() { std::tie(func, targetDevice) = GetParam(); function = (std::get<0>(func))(); threshold = std::get<2>(func); + functionRefs = ngraph::clone_function(*function); } TEST_P(PrePostProcessTest, CompareWithRefs) { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp index 207de622391..859b2d5d786 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_convolution_backprop_data.cpp @@ -77,5 +77,6 @@ void QuantConvBackpropDataLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(convBackpropData)}; function = std::make_shared(results, params, "QuantConvolutionBackpropData"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp index 02042976cdb..41b40d2200b 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution.cpp @@ -92,5 +92,6 @@ void QuantGroupConvLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(groupConv)}; function = std::make_shared(results, params, "QuantGroupConvolution"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp index b4fd49b026c..a034c8a667f 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_group_convolution_backprop_data.cpp @@ -83,5 +83,6 @@ void QuantGroupConvBackpropDataLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(groupConvBackpropData)}; function = std::make_shared(results, params, "QuantGroupConvolutionBackpropData"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp index bae902c0298..95765a8b6c6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/quantized_mat_mul.cpp @@ -99,5 +99,6 @@ void QuantMatMulTest::SetUp() { ngraph::builder::makeMatMul(dataFq0, dataFq1)); ngraph::ResultVector results{std::make_shared(MatMul)}; function = std::make_shared(results, params, "QuantMatMul"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/range_add.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/range_add.cpp index f85f1ecc729..057eef0c369 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/range_add.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/range_add.cpp @@ -41,6 +41,7 @@ void RangeAddSubgraphTest::SetUp() { auto eltwise = ngraph::builder::makeEltwise(params.front(), range, ngraph::helpers::EltwiseTypes::ADD); const ngraph::ResultVector results{std::make_shared(eltwise)}; function = std::make_shared(results, params, "RangeEltwise"); + functionRefs = ngraph::clone_function(*function); } // ------------------------------ V4 ------------------------------ @@ -82,5 +83,6 @@ void RangeNumpyAddSubgraphTest::SetUp() { auto eltwise = ngraph::builder::makeEltwise(params.front(), range, ngraph::helpers::EltwiseTypes::ADD); const ngraph::ResultVector results{std::make_shared(eltwise)}; function = std::make_shared(results, params, "RangeEltwise"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reduce_eltwise.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reduce_eltwise.cpp index 14c2cf95ff6..0c54b4ddabe 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reduce_eltwise.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reduce_eltwise.cpp @@ -62,5 +62,6 @@ void ReduceEltwiseTest::SetUp() { auto eltw = ngraph::builder::makeEltwise(reduce, constant, ngraph::helpers::EltwiseTypes::MULTIPLY); ngraph::ResultVector results{std::make_shared(eltw)}; function = std::make_shared(results, params, "ReduceEltwise"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_shape_of.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_shape_of.cpp index 3792cf2625b..11a2708935d 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_shape_of.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_shape_of.cpp @@ -28,5 +28,6 @@ namespace SubgraphTestsDefinitions { auto shapeOf = std::make_shared(relu, inType); const ngraph::ResultVector results{std::make_shared(shapeOf)}; function = std::make_shared(results, param, "ReluShapeOf"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_split_reshape.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_split_reshape.cpp index 38261ac6c90..16074954469 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_split_reshape.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/relu_split_reshape.cpp @@ -46,5 +46,6 @@ void ReluSplitReshape::SetUp() { auto reshape = std::make_shared(split->output(0), reshape_const, false); function = std::make_shared(reshape, params, "ReluSplitReshape"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_conv_permute_reshape_act.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_conv_permute_reshape_act.cpp index 2f1f4f64999..547d96ed371 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_conv_permute_reshape_act.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_conv_permute_reshape_act.cpp @@ -74,6 +74,7 @@ namespace SubgraphTestsDefinitions { auto tanh = std::make_shared(reshape_out); function = std::make_shared(tanh, input_parameter, "conv_reshape_act"); + functionRefs = ngraph::clone_function(*function); } void ConvReshapeAct::Run() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_reshape.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_reshape.cpp index 7468d72f7b2..5b224e39060 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_reshape.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_permute_reshape.cpp @@ -40,5 +40,6 @@ namespace SubgraphTestsDefinitions { std::vector{1, input_dim}); auto reshape2 = std::make_shared(permute, reshape2_pattern, false); function = std::make_shared(reshape2, input, "reshape_permute_reshape"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_squeeze_reshape_relu.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_squeeze_reshape_relu.cpp index 2fb09bcdfe3..d477260f770 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_squeeze_reshape_relu.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/reshape_squeeze_reshape_relu.cpp @@ -43,5 +43,6 @@ namespace SubgraphTestsDefinitions { std::string squeezeType; function = std::make_shared(func, input, "reshape_squeeze_reshape_relu"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/scale_shift.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/scale_shift.cpp index d15ecfc4f26..8c9ea8686ec 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/scale_shift.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/scale_shift.cpp @@ -37,5 +37,6 @@ namespace SubgraphTestsDefinitions { auto add_const = std::make_shared(ngPrc, paramsShape, shift); auto add = std::make_shared(mul, add_const); function = std::make_shared(add, paramsIn, "scale_shift"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/scaleshift_conv_scaleshift.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/scaleshift_conv_scaleshift.cpp index e3d6d53bc89..5c911f90fe6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/scaleshift_conv_scaleshift.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/scaleshift_conv_scaleshift.cpp @@ -90,6 +90,7 @@ void ScaleShiftAfterConvTest::SetUp() { auto reshape3 = std::make_shared(add, reshapePattern3, false); function = std::make_shared(mul, params, "ScaleShiftAfterConvTest"); + functionRefs = ngraph::clone_function(*function); } std::string ScaleShiftBeforeConvTest::getTestCaseName(const testing::TestParamInfo& obj) { @@ -174,5 +175,6 @@ void ScaleShiftBeforeConvTest::SetUp() { auto reshape3 = std::make_shared(conv, reshapePattern3, false); function = std::make_shared(reshape3, params, "ScaleShiftBeforeConvTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/softsign.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/softsign.cpp index 585e8305652..9d903be6b6c 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/softsign.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/softsign.cpp @@ -47,6 +47,7 @@ void SoftsignTest::SetUp() { auto mul = std::make_shared(power, params[0]); ngraph::ResultVector results{ std::make_shared(mul) }; function = std::make_shared(results, params, "SoftSignTest"); + functionRefs = ngraph::clone_function(*function); } void SoftsignTest::Run() { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_concat_memory.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_concat_memory.cpp index ec81837b97f..e2b9d7ecad6 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_concat_memory.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_concat_memory.cpp @@ -78,5 +78,6 @@ void SplitConcatMemory::SetUp() { ngraph::NodeVector {plus}, ngraph::ParameterVector {input}, "CyclicBuffer4"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv.cpp index d4a71c5ce5f..80f07adb9d1 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv.cpp @@ -86,6 +86,7 @@ void SplitConvTest::SetUp() { ngraph::ResultVector results{std::make_shared(relu1), std::make_shared(reshape2)}; function = std::make_shared(results, params, "SplitConvTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv_concat.cpp index 97ec949438f..5b6cd248810 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_conv_concat.cpp @@ -46,6 +46,7 @@ void SplitConvConcat::SetUp() { ngraph::ResultVector results{std::make_shared(concat)}; function = std::make_shared(results, params, "SplitConvConcat"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_relu.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_relu.cpp index 7c3160ac16b..f515cbe7583 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_relu.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_relu.cpp @@ -38,5 +38,6 @@ namespace SubgraphTestsDefinitions { results.push_back(std::make_shared(relu)); } function = std::make_shared(results, input, "split_relu"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_trivial_permute_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_trivial_permute_concat.cpp index ea2d547b7cf..783243169fb 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_trivial_permute_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/split_trivial_permute_concat.cpp @@ -45,5 +45,6 @@ namespace SubgraphTestsDefinitions { auto concat = std::make_shared(ngraph::OutputVector{ split->output(0), split->output(1) }, concatAxis); auto act = ngraph::builder::makeActivation(concat, ngPrc, ngraph::helpers::ActivationTypes::Relu); function = std::make_shared(act, input, "split_trivial_permute_concat"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/stridedslice_conv.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/stridedslice_conv.cpp index f726cfcaf16..60e3c843641 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/stridedslice_conv.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/stridedslice_conv.cpp @@ -70,6 +70,7 @@ void SliceConvTest::SetUp() { { 0, 0 }, { 1, 1 }, ngraph::op::PadType::VALID, outputChannels, false, filterWeights); function = std::make_shared(conv, params, "StridedSliceConvTest"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/tensor_names.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/tensor_names.cpp index fa2d8b7b1a4..8d498fdf6cb 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/tensor_names.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/tensor_names.cpp @@ -30,6 +30,7 @@ void TensorNamesTest::SetUp() { results[0]->set_friendly_name("out"); ngraph::ParameterVector params{parameter}; function = std::make_shared(results, params, "TensorNames"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_add.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_add.cpp index ec405c4f63a..5001305d750 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_add.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_add.cpp @@ -44,6 +44,7 @@ void TransposeAdd::SetUp() { auto add = std::make_shared(transpose_in, add_const); function = std::make_shared(add, params, "transpose_add"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions \ No newline at end of file diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_conv_transpose_squeeze.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_conv_transpose_squeeze.cpp index 07a455799e0..bd6d1c8be9a 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_conv_transpose_squeeze.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/transpose_conv_transpose_squeeze.cpp @@ -77,6 +77,7 @@ void TransposeConvTest::SetUp() { auto squeeze = std::make_shared(transpose2, constant_squeeze); function = std::make_shared(squeeze, params, "transposeConv"); + functionRefs = ngraph::clone_function(*function); } InferenceEngine::Blob::Ptr TransposeConvTest::GenerateInput(const InferenceEngine::InputInfo &info) const { diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/trivial_concat.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/trivial_concat.cpp index 85a6d0fd32d..9bd9facb50c 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/trivial_concat.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/trivial_concat.cpp @@ -51,5 +51,6 @@ void TrivialConcatLayerTest::SetUp() { ngraph::ResultVector results{std::make_shared(act)}; function = std::make_shared(results, params, "trivial_concat"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/two_fake_quantize_to_fullyconnected.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/two_fake_quantize_to_fullyconnected.cpp index 3123ef72fe9..7d3998111b3 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/two_fake_quantize_to_fullyconnected.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/two_fake_quantize_to_fullyconnected.cpp @@ -138,6 +138,7 @@ void FakeQuantizeSubgraphTest::SetUp() { results.push_back(std::make_shared(sigmoid_2)); } function = std::make_shared(results, params, "fakeQuantizeSubgraph"); + functionRefs = ngraph::clone_function(*function); configuration = config.second; } diff --git a/inference-engine/tests/functional/shared_test_classes/src/subgraph/variadic_split_pad.cpp b/inference-engine/tests/functional/shared_test_classes/src/subgraph/variadic_split_pad.cpp index 1de3509415d..08b344735f3 100644 --- a/inference-engine/tests/functional/shared_test_classes/src/subgraph/variadic_split_pad.cpp +++ b/inference-engine/tests/functional/shared_test_classes/src/subgraph/variadic_split_pad.cpp @@ -47,5 +47,6 @@ void VariadicSplitPad::SetUp() { results.push_back(std::make_shared(pad)); } function = std::make_shared(results, input, "variadic_split_pad"); + functionRefs = ngraph::clone_function(*function); } } // namespace SubgraphTestsDefinitions diff --git a/inference-engine/tests/ie_test_utils/common_test_utils/common_utils.hpp b/inference-engine/tests/ie_test_utils/common_test_utils/common_utils.hpp index 9abc01094d2..8646762a65c 100644 --- a/inference-engine/tests/ie_test_utils/common_test_utils/common_utils.hpp +++ b/inference-engine/tests/ie_test_utils/common_test_utils/common_utils.hpp @@ -47,6 +47,36 @@ inline std::string vec2str(const std::vector &vec) { return std::string("()"); } +inline std::string partialShape2str(const std::vector& partialShapes) { + std::ostringstream result; + for (const auto& partialShape : partialShapes) { + result << vec2str(partialShape.get_min_shape()) << "_" << vec2str(partialShape.get_max_shape()); + } + return result.str(); +} + +inline std::string pair2str(const std::pair& p) { + std::ostringstream result; + result << "(" << p.first << "." << p.second << ")"; + return result.str(); +} + +inline std::string vec2str(const std::vector> &vec) { + std::ostringstream result; + for (const auto &p : vec) { + result << pair2str(p); + } + return result.str(); +} + +inline std::string vec2str(const std::vector>> &vec) { + std::ostringstream result; + for (const auto &v : vec) { + result << vec2str(v); + } + return result.str(); +} + template inline std::string vec2str(const std::vector> &vec) { std::ostringstream result; @@ -56,6 +86,15 @@ inline std::string vec2str(const std::vector> &vec) return result.str(); } +template +inline std::string vec2str(const std::vector>> &vec) { + std::ostringstream result; + for (const auto &v : vec) { + result << vec2str(v); + } + return result.str(); +} + template inline std::string set2str(const std::set &set) { if (!set.empty()) {